“七牛大文件上传示例” http://7niu.sinaapp.com/ 是否不支持IE10??

已经考虑到上传视频文件,文件较大(100M左右),所以采用七牛的分片上传,以及断点续传。

在官网中的看到的有关“七牛大文件上传示例”,发现在火狐以及谷歌中可以运行(还是有些问题,下面再说),但是在IE10中,报错了:【SCRIPT438: 对象不支持“readAsBinaryString”属性或方法 】,因为该demo并没有详细的文档说明,所以问一下官方: 是否支持HTML5的浏览器,即可运行该demo,出现了这个问题,“qiniu.uploader.js” 该文件是否还需要改善? 希望给出点建议,谢谢。

图片描述

[图1]该示例是在 http://7niu.sinaapp.com/下载的

图片描述

[图2]IE10 报错截图


补充说明上面说到的,在谷歌和火狐浏览器中存在的一些问题:
因为该demo,在每次点击上传文件时,都会先ajax请求获取一个uptoken,即请求index.php。
并且每次请求都会POST一些数据:index.php 来接受数据,打印出来的结果是:
Array( [putExtra] => {\"key\":\"bbbb.jpg\"})

该demo中的index.php 是这样处理的:$extra = json_decode($_POST["putExtra"]);

结果是报错的,当然有可能官方使用的php版本较低,我用的php5.3,结果就是报错,因为该字符串并非json_decode可反序列化的字符串,而是添加了反斜杠,所以报错。

最后自己的解决方法是:
$_POST["putExtra"] = stripslashes($_POST["putExtra"]); //先把反斜杠给去掉
$extra = json_decode($_POST["putExtra"]);

不知道官方放出的demo,会没有说明的,就一个demo放在哪里,最起码有一个文档说明吧,所以对于我们开发人员来讲,是非常不淡定的一件事,希望以后,只要是官方给出的东西,都必须有详细的文档说明才好。

阅读 7.1k
1 个回答
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
logo
七牛云问答
子站问答
访问
宣传栏