1. 程式人生 > >圖片上傳的跨域問題的幾種解決方案和細節及優缺點

圖片上傳的跨域問題的幾種解決方案和細節及優缺點

方案一 傳到前端伺服器本地,然後用伺服器跨域

ajaxSubmit方式,需要jquery.form.min.js外掛

$("#imgUploadForm").ajaxSubmit({
    type: "POST",//提交型別
    dataType: "json",//返回結果格式
    url: '/php/temporary/Controller/aotuTailorUploadController.php',//請求地址
    data: { "orientation": Orientation},//請求資料
    success: function (data) {//請求成功後的函式
       

    },
    error: function (data) { /*console.log(JSON.stringify(data));*/ },//請求失敗的函式
    async: true

});

傳到本地,然後再傳到圖片伺服器.缺點:速度慢,通用性差.

方案二 uploadify外掛.

flash外掛跨域.具體用法google.缺點:不支援手機端,使用了flash.

伺服器端設定.在xml中設定能夠跨域的白名單即可

方式三 plupload外掛

支援h5手機端使用

伺服器端設定.多個網站可以上傳

$origin = isset($_SERVER['HTTP_ORIGIN'])? $_SERVER['HTTP_ORIGIN'] : '';  
  
$allow_origin = array(  
    'http://client1.runoob.com',  
    'http://client2.runoob.com'  
);  
  
if(in_array($origin, $allow_origin)){  
    header('Access-Control-Allow-Origin:'.$origin);       
}