最近将以前用As3+Php做的一个画板拿出来改成了As3+nodejs(expressjs4)。
Node:
1. 将图片存放的路径设置为静态公开的路径。
app.use(express.static(‘截图存放路径’));
2. app中设置上传路由处理函数。
app.post(‘/whiteboard/upload‘, uploadHandler)
‘/whiteboard/upload‘为文件上传路径,As3中当然需要加上主机地址。
3. 在uploadHandler中监听request对象的‘data’,‘end‘事件。当图片比较大时,data事件可能会触发多次,此时需要将每次获取到的数据追加起来,直到end事件触发时,数据才真正接收完毕。所以在end事件处理函数中利用fs读取数据生成文件。
4. request对象的data事件处理函数的参数实际上是一个Buffer对象。
As3:
利用URLLoader类发送上传请求。
1. 设置格式,_loader.dataFormat = URLLoaderDataFormat.BINARY;
2. 设置post数据,_urlRequest.data = ba;//ba为图片转换后的byteArray
3.设置complete事件监听,_loader.addEventListener(Event.COMPLETE,onSaveComplete);
4.获取后台返回的数据,_loader.data
时间: 2024-10-05 22:35:07