使用七牛的前端上传不成功

上传的时候控制台报错,

:_xhr.open(meta.method, meta.url, meta.async, meta.user, meta.password);   moxie.js (第 6892 行)

我的配置如下

<script src="http://cdn.bootcss.com/jquery/2.1.1/jquery.min.js"></script>
<script type="text/javascript" src="moxie.js"></script>
<script type="text/javascript" src="plupload.dev.js"></script>
<script type="text/javascript" src="qiniu.min.js"></script>
<script type="text/javascript">
    $(document).ready(function () {
        var uploader = Qiniu.uploader({
            runtimes: 'html5,flash,html4',    //上传模式,依次退化
            browse_button: 'pickfiles',       //上传选择的点选按钮,**必需**
            uptoken_url: '/api/img',
            container: 'iii',
            drop_element: 'iii',
            unique_names: true,
            multi_selection: false,
            filters: {
                mime_types: [
                    {title: "Image files", extensions: "jpg,jpeg,png"}
                ]
            },
            dragdrop: false,
            domain: 'http://image-xjx.qiniudn.com/',
            //bucket 域名,下载资源时用到,**必需**
            max_file_size: '10mb',           //最大文件体积限制
            flash_swf_url: '/Moxie.swf',  //引入flash,相对路径
            max_retries: 3,                   //上传失败最大重试次数
            chunk_size: '4mb',                //分块上传时,每片的体积
            auto_start: true,                 //选择文件后自动上传,若关闭需要自己绑定事件触发上传
            init: {
                'FilesAdded': function (up, files) {
                    plupload.each(files, function (file) {
                        // 文件添加进队列后,处理相关的事情
                    });
                },
                'BeforeUpload': function (up, file) {
                    // 每个文件上传前,处理相关的事情
                },
                'UploadProgress': function (up, file) {
                    // 每个文件上传时,处理相关的事情
                },
                'FileUploaded': function (up, file, info) {
                    // 每个文件上传成功后,处理相关的事情
                    // 其中 info 是文件上传成功后,服务端返回的json,形式如
                    // {
                    //    "hash": "Fh8xVqod2MQ1mocfI4S4KpRL6D98",
                    //    "key": "gogopher.jpg"
                    //  }
                    // 参考http://developer.qiniu.com/docs/v6/api/overview/up/response/simple-response.html
                    var domain = up.getOption('domain');
                    var res = parseJSON(info);
                    var sourceLink = domain + res.key;
                    alert(sourceLink);
                },
                'Error': function (up, err, errTip) {
                    //上传出错时,处理相关的事情
                },
                'UploadComplete': function () {
                    //队列文件处理完毕后,处理相关的事情
                },
                'Key': function (up, file) {
                    // 若想在前端对每个文件的key进行个性化处理,可以配置该函数
                    // 该配置必须要在 unique_names: false , save_key: false 时才生效
                    var key = "";
                    // do something with key here
                    return key
                }
            }
        });
    });
</script>

代码是按照DEMO做的
请问这个是配置问题吗?还是我提供的上传凭证有问题?

阅读 4.7k
2 个回答

@forrest_mao 已经解决了,貌似是我火狐的扩展问题导致的,不过是哪个扩展暂时不清楚

能否描述一下你的错误是什么呢,另外上传的时候请求是否发送成功了?发送成功的话七牛返回的response是什么能否提供一下。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进