首页 > 代码库 > 关于draw截图上传服务器的一个问题
关于draw截图上传服务器的一个问题
因需要做了一个截取显示对象图片上传至服务器,纠结了好多种方法都无果,今天突然发现了真面目:
上传图片至服务器的三种方式分别为:
1、二进制传输(BINARY)
2、字符串传输(String)
3、文件流上传(File)
第三种要借助FileReference,但是在此不能用这个,所以过。就剩前面两种了,其实前面两种只是上传格式不同而已。在这只是想说遇到的用二进制流上传遇到的问题:
最开始用URLVariables + 将JPGEncoder压缩成的二进制流当做data参数来上传始终没法接收到。后又将URLVariables 去掉,将数据直接放在URLRequest的data里,还是不行。经过再三折腾,发现一定要将
URLRequest的contentType设置成"application/octet-stream"才可以,那么正确的方式应该是:
1: var jg:JPGEncoder = new JPGEncoder(100);
2: var bd:ByteArray = jg.encode(/*数据源bitmapdata*/);
3: //var pngByte:ByteArray=PNGEncoder.encode(_firstPgBmd);
4: var loader:URLLoader = new URLLoader();
5: var url:URLRequest=new URLRequest(/*url*/);
6: url.data=http://www.mamicode.com/bd;
7: url.method=URLRequestMethod.POST;
8: url.contentType = "application/octet-stream";
9: loader.addEventListener(Event.COMPLETE, onCom);
10: loader.load(url);
关于上传图片的三种方式比较详细的blog地址:http://www.cnblogs.com/meteoric_cry/archive/2011/06/18/2084371.html
关于draw截图上传服务器的一个问题
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。