跨域上传的问题

时间:2010-02-06 22:17:50

标签: flash cross-domain uploadify crossdomain.xml

我正在使用一个名为django-filebrowser的django插件,该插件使用uploadify。我遇到的问题是我在远程静态媒体服务器上托管uploadify.swf,而我的管理区域在我的django服务器上。

首先,browse按钮不会调用我的浏览器上传。我通过将sameScriptAccess修改为always而非sameDomain来解决此问题。现在进度条根本没有移动,我可能必须为跨域文件上传启用一些服务器设置,或者很可能实际上在我的媒体服务器上托管一个单独的上传脚本。

我想我可以通过添加crossdomain.xml来解决这个问题,以便在两台服务器的根目录下启用任何站点,但这似乎无法解决问题。

$(document).ready(function() {
    $('#id_file').uploadify({
        'uploader'          : 'http://media.site.com:8080/admin/filebrowser/uploadify/uploadify.swf',
        'script'            : '/admin/filebrowser/upload_file/',
        'scriptData'        : {'session_key': '...'},
        'checkScript'       : '/admin/filebrowser/check_file/',
        'cancelImg'         : 'http://media.site.com:8080/admin/filebrowser/uploadify/cancel.png',
        'auto'              : false,
        'folder'            : '',
        'multi'             : true,
        'fileDesc'          : '*.html;*.py;*.js;*.css;*.jpg;*.jpeg;*.gif;*.png;*.tif;*.tiff;*.mp3;*.mp4;*.wav;*.aiff;*.midi;*.m4p;*.mov;*.wmv;*.mpeg;*.mpg;*.avi;*.rm;*.pdf;*.doc;*.rtf;*.txt;*.xls;*.csv;',
        'fileExt'           : '*.html;*.py;*.js;*.css;*.jpg;*.jpeg;*.gif;*.png;*.tif;*.tiff;*.mp3;*.mp4;*.wav;*.aiff;*.midi;*.m4p;*.mov;*.wmv;*.mpeg;*.mpg;*.avi;*.rm;*.pdf;*.doc;*.rtf;*.txt;*.xls;*.csv;',
        'sizeLimit'         : 10485760,
        'scriptAccess'      : 'always',
        //'scriptAccess'      : 'sameDomain',
        'queueSizeLimit'    : 50,
        'simUploadLimit'    : 1,
        'width'             : 300,
        'height'            : 30,
        'hideButton'        : false,
        'wmode'             : 'transparent',
        translations        : {
                              browseButton: 'BROWSE',
                              error: 'An Error occured',
                              completed: 'Completed',
                              replaceFile: 'Do you want to replace the file',
                              unitKb: 'KB',
                              unitMb: 'MB'
        }
    });
    $('input:submit').click(function(){
        $('#id_file').uploadifyUpload();
        return false;
    });
});

我正在查看的页面是端口80上的http://site.com/admin/filebrowser/browse

1 个答案:

答案 0 :(得分:0)

托管SWF在本地提供帮助吗?