JSON上传文件问题

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

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

有做过类似需求的给个思路
...全文
640 5 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
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; }

81,122

社区成员

发帖
与我相关
我的任务
社区描述
Java Web 开发
社区管理员
  • Web 开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧