藏软科技
藏软科技
  • 发布:2017-03-28 17:12
  • 更新:2017-04-04 15:57
  • 阅读:2572

我真是服了,同样的请求,在web端执行就可以成功,在手机端就会出错

分类:HTML5+

由于项目需求,必须要用云存储。先后试过阿里oss、七牛云。所有的上传方式都是:在web端执行没有任何问题,但在手机端app里执行就报错。试了好多方法都不行,不管是用pulpload上传,还是调用这些云存储平台的sdk,直接发post请求都不行,被这个问题卡了好多天了,如果还是这样,那只能弃坑了,试试别的框架。我怀疑HTML5 Plus把上传请求的包数据改了?所以来确认一下。

用的plupload,代码完全一样,这个是七牛封装过的
<script src="../plupload/plupload.full.min.js"></script>
<script src="../plupload/qiniu.min.js"></script>//七牛的sdk
var uploader = Qiniu.uploader({
runtimes: 'html5,flash,html4',
browse_button: 'pickfiles',
uptoken :**//为了安全起见,token不贴出来了
domain: 'http://ongojh0ux.bkt.clouddn.com/', //bucket 域名,下载资源时用到,
必需**
get_new_uptoken: false, //设置上传文件的时候是否每次都重新获取新的token
container: 'container', //上传区域DOM ID,默认是browser_button的父元素,
max_file_size: '100mb', //最大文件体积限制
flash_swf_url: '../plupload/Moxie.swf',//引入flash,相对路径
max_retries: 3,//上传失败最大重试次数
dragdrop: false,//是否可拖曳上传
//drop_element: 'container', //拖曳上传区域元素的ID,拖曳文件或文件夹后可触发上传
chunk_size: '4mb', //分块上传时,每片的体积
auto_start: true, //选择文件后自动上传,若关闭需要自己绑定事件触发上传
//主要就是参数的配置,所以底下的代码就不贴了,而且下面的代码没有进行什么处理,都是打印结果什么的
});

这个是在浏览器和hbuilder里直接执行的结果,上传成功:


这个是在真机中运行,可以看到发送请求后报错了:

2017-03-28 17:12 负责人:无 分享
已邀请:
藏软科技

藏软科技 (作者)

成功了,不要用plupload和七牛的sdk,用H5+封装的uploader就可以了

  • 基本昵称

    uploader怎么进行分块上传?

    2019-11-27 18:30

小小鸟try

小小鸟try

日志告诉你了,用up-z2.qiniu.com 上传就ok了,我上次也是这个问题

  • 藏软科技 (作者)

    大哥别逗我,你确定你上次也是这个问题?问题是我换了这个地址还是不行,一样的错误,而且也是在浏览器中没问题,在手机上执行就有问题。而且本身用测试域名,在web端就可以执行的,我问过七牛那边,用测试域名也可以,如果不开启cdn加速域名的话,其实跟up-z2.qiniu.com这个域名是差不多的

    2017-03-28 17:32

  • 小小鸟try

    这个错是七牛服务器返回的,不是报错,我之前是在电脑可以,iPad不行,换了这个域名就Okay了,实在不行找官方吧

    2017-03-28 21:50

藏软科技

藏软科技 (作者)

大哥别逗我,你确定你上次也是这个问题?问题是我换了这个地址还是不行,一样的错误,而且也是在浏览器中没问题,在手机上执行就有问题。而且本身用测试域名,在web端就可以执行的,我问过七牛那边,用测试域名也可以,如果不开启cdn加速域名的话,其实跟up-z2.qiniu.com这个域名是差不多的

斑驳的记忆

斑驳的记忆

还有flash呢。。估计是webview不支持flash插件吧

该问题目前已经被锁定, 无法添加新回复