上传进度100%后,还要等很久才会返回。
因为文件上传到服务器后还要上传到云储存。
一个机房的话还好。不然的话就慢死了。1M的文件等几秒
注意:### 这里说的是浏览器进度条100%后还要等几秒 ###,无论是html5的上传进度监听,还是原生文件表单使浏览器状态条出现的100%
有兴趣的可以发表一个话题,在发表页面上传文件就知道了。
解决方案:
1、 尽量用同机房的云储存。
例如百度云和阿里云和新浪云。
问题在于不是所有云储存都有自己的代码执行环境提供的,七牛又拍什么的,他们是只提供储存的。
2、表单上传SDK。
通过这种接口,直接上传到云储存,而不用后端再上传一遍,就不存在此问题了。
但是这样也有一个问题,那就是没法再用户上传之前作权限验证之类的操作了。
3、后端异步上传。
后端接受到文件后,直接返回,然后异步上传。
但是这样有很大的问题,例如头像上传完后没法直接返回链接。而且这个异步的机制也会增加后端的工作量和技术难度。
现在七牛的解决方案就是直传到七牛云上。 具体模型参考http://developer.qiniu.com/docs/v6/api/overview/programming-model.html
基本上就是你说的第二条, 这个上传钱作权限验证完全可以由你的业务逻辑来保证。