在實際項目當中,我們經常會遇到同一個域名下不同項目之間通過Ajax相互調用數據,這樣問題就來了,如何通過Ajax實現跨域呢?
解決方案
1.Jsonp
Jsonp解決跨域相對簡單,服務器無需任何配置。具體實現如下:
$.ajax({ type: 'get', url: 'http://xxx.com', data: {}, dataType: 'jsonp', success: function (data) { }, error: function (data) { mask.close(); toast('請求失敗'); }});
2.CORS
CORS解決方案需要前端和服務端共同配置才能實現
前端
$.ajax({ url: 'http://xxx.com', type: 'post', xhrFields:{ withCredentials:true }, data: {}, success: function(res){ }, error: function(){ alert('服務器發生錯誤!'); }});
服務端(在程序入口文件配置)
header('Access-Control-Allow-Origin: http://xxx.com');header('Access-Control-Allow-Credentials: true');header('Access-Control-Allow-Headers: Origin, X-Requested-With, Content-Type, Accept');
總結
以上所述是小編給大家介紹的Ajax實現跨域訪問最新解決方案,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對武林網網站的支持!
新聞熱點
疑難解答
圖片精選