webuploader.js圖片上傳插件,關於flash跨域問題


webuploader.js圖片上傳插件

var uploader = WebUploader.create({
    // 選完文件后,是否自動上傳。
    auto: true,
    // swf文件路徑
    swf: 'js/Uploader.swf',
    // 文件接收服務端。
    server: 'http://jasmine.55ideal.com/pc/opus/upload ',
    // 選擇文件的按鈕。可選。
    // 內部根據當前運行是創建,可能是input元素,也可能是flash.
    pick: '#picker',
    method: 'POST',
    formData:{
       token:$.cookie("token")//與后台約定好的參數
    },
    // runtimeOrder:'html5,flash',
    // sendAsBinary:true,
    // 不壓縮image, 默認如果是jpeg,文件上傳前會壓縮一把再上傳!
    resize: false
});

在chrome下默認用的是HTML5模式上傳圖片,用起來沒問題,但是用IE7/8/9打開,則總是提示圖片上傳失敗。

原因如下:

IE7/8/9下采用的是flash模式上傳圖片,所以服務器除了需要設置HTML5模式下的ajax跨域外,還需要設置flash模式下的flash跨域,這樣才能使用flash上傳圖片。

flash跨域需要在服務器根目錄放一個XML文件,固定名稱為:crossdomain.xml

第一種:
<?xml version="1.0"?>
<cross-domain-policy>
  <allow-access-from domain="www.friendOfFoo.com" />
  <allow-access-from domain="*.foo.com" />
  <allow-access-from domain="105.216.1.41" />
</cross-domain-policy>

第二種:
<?xml version="1.0"?>
<cross-domain-policy>
  <allow-access-from domain="*" />
</cross-domain-policy>

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM