开发者社区> 问答> 正文

OSS上传为何不支持uploadify插件

<!DOCTYPE html>
<html>
<head>
    <meta http-equiv="content-type" content="text/html; charset=UTF-8"/>
    <title></title>
    <link rel="stylesheet" type="text/css" href="http://dian.yumimg.com/uploadify/uploadify.css"/>
</head>
<body>

<div id="container"></div>
</body>
<script type="text/javascript" src="jquery-1.9.1.min.js"></script>
<script type="text/javascript" src="uploadify/jquery.uploadify.min.js"></script>
<script>
function getAuth(){
    var result=false;
    $.ajax({
        type:'get',
        url:'get.php',
        async:false,
        success: function(data){
            result=data;
        }
    })    
    return result;
}
$(function(){
    var auth=getAuth();    
    if(auth!=false){
        auth = eval ("(" + auth + ")");

        $('#container').uploadify({                      
            'swf':'uploadify/uploadify.swf',
            'uploader':'http://xxx.oss-cn-shenzhen.aliyuncs.com',            
            'fileTypeDesc':'支持的格式:',
            'fileTypeExts':'*.gif;*.jpg;*.jpge;*.png',
            'auto':true, //是否自动上传
            'queueSizeLimit':1, //上传数量
            'method': 'post', //默认post
            'multi':false,        
            'overrideEvents':['onSelectError','onDialogClose'],
            'debug':true,
            'onFallback':function(){
                alert('未检测到兼容版本的Flash.');
            },
            'onUploadStart':function(file) {
                $('#container').uploadify("settings", "formData", {
                    'key' : auth.dir + file.name,
                    'policy': auth.policy,
                    'OSSAccessKeyId': auth.accessid,
                    'signature': auth.signature,
                    'callback' : auth.callback,
                    'success_action_status' : '200', //让服务端返回200,不然,默认会返回204
                });
            },
            'onSelectError':function(file, errorCode, errorMsg){
                switch(errorCode) {
                    case -100:
                        alert("上传的文件数量已经超出系统限制的个文件!");
                        break;
                    case -110:
                        alert("文件 ["+file.name+"] 大小超出系统限制的大小!");
                        break;
                    case -120:
                        alert("文件 ["+file.name+"] 大小异常!");
                        break;
                    case -130:
                        alert("文件 ["+file.name+"] 类型不正确!");
                        break;
                }
            },
            'onUploadSuccess':function(file,data,response) {
                alert(data)
            }
        })
    }
})
</script>
</html>




跨域都写了,,这里的错误好像是说跨域问题,,,有哪些大神可以解决下

展开
收起
自由阎王 2016-02-23 15:12:09 9601 0
4 条回答
写回答
取消 提交回答
  • 回 4楼(123456qqq) 的帖子
    如果碰到这种问题建议:
    1 使用chrome或者wireshark来抓包,将整个HTTP请求的包附在工单中

    2 可以参考下
    https://yq.aliyun.com/articles/30346?spm=0.0.0.0.Swe9MD
    中,java是怎么构建http请求
    2016-04-27 17:44:29
    赞同 展开评论 打赏
  • 回 2楼自由阎王的帖子
    uploadify直传OSS遇到同样问题The body of your POST request is not well-formed multipart/form-data
    2016-04-27 17:25:12
    赞同 展开评论 打赏
  • ReOSS上传为何不支持uploadify插件
    恩,是Flash上传,我在我的 object 中传了一个 crossdomain.xml 文件里面里写了,跨域解决代码,,也不会出现先前的 跨域问题了,,但又出现了一个


    http 400 错误的请求,我的这些信息都是对的,不知道哪里错了???











    2016-02-23 16:38:07
    赞同 展开评论 打赏
  • 回 楼主(自由阎王) 的帖子
    swfupload这个是flash 方式上传的吧,flash的跨域跟不是设置cors,可以参考 文章: https://yq.aliyun.com/articles/3198?spm=5176.100240.searchblog.13.bv5AfI

    -------------------------

    你里面有一个字段 : fieldValue:; filename="cb8065380cd79123dc50bc3caf345982b3b780c1.jpg"
    这个不符合表单结构,你可以按照我发的那个工具对照一下。看一下哪里有问题

    2016-02-23 15:20:02
    赞同 展开评论 打赏
问答排行榜
最热
最新

相关电子书

更多
OSS运维进阶实战手册 立即下载
《OSS运维基础实战手册》 立即下载
OSS运维基础实战手册 立即下载