JSON上传文件问题

沐浴阳光多一点 2015-07-09 09:21:08
最近做一个项目接口 需要用json上传文件 求方法

百度找个 用什么byte 或者base64 因为生成的数据太长 无法传入到接口端 基本进去了图片等都是坏掉的

有做过类似需求的给个思路
...全文
542 点赞 收藏 5
写回复
5 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
attilax 2015-07-22
使用base64把图片二进制转为字符串,,然后切分字符串长度,分块上传。。 如果大文件的化,要考虑多线程,以及分块的请求重发等机制,还有断点续传。。
回复
xiaohuashenshou 2015-07-09
可以将文件流的字节数组全部都转换成16进制字符,如果内容太大可分多次上传,传送完毕之后然后再将得到的16进制字符转换成字节流写入文件,此方法以前实现过,抱歉家里没有代码,不能给你实例
回复
securitit 2015-07-09
服务器端: 对于大文件,一次性读入内存已经是服务器的考验了,想象一下,在多用户进行文件操作时,服务器的堆内内存根本没能力同时容纳这么多数据同时进驻内存,所以对于读取文件应该采取分包读取。 在做文件传输时,采用分包发送的方式,各个包依然可以采用base64等技术,这样在处理文件过长的问题下,同时可以简单的实现文件的断点续传和断点下载功能。
回复
a2862433 2015-07-09
//文件上传 function uploadFile(){ $.ajaxFileUpload({ // url:serverUrl + "uploadFile.do",// 文件上传服务器请求Action url:serverUrl + "upload_file/key/uploadFile", secureuri:true,// 安全提交,默认为false fileElementId:"file_upload",// 文件类型的id dataType:"text",// 返回值类型 success:function(data){// 服务器响应成功 // var re = {"SUCCESS": true, "MESSAGE":"","DATA":{"URL":"../inc/image/book-top.jpg"}}; re = eval("(" + data + ")"); if(re.SUCCESS){ $("#myinfo_img").attr("src",re.DATA.url); }else{ alert(re.MESSAGE); } }, error:function(data){// 服务器响应失败 alert("未知错误,请联系管理员!"); } }); return false; }
回复
相关推荐
发帖
Web 开发
创建于2007-09-28

8.0w+

社区成员

Java Web 开发
申请成为版主
帖子事件
创建了帖子
2015-07-09 09:21
社区公告
暂无公告