最近開始接觸ajax的跨域請求問題,相比網上說的一大堆,我這裡就說得比較淺顯了。
關於為什麼要跨域這個問題,實際的需求是當**專案部署在乙個網域名稱上的時候,分域可以很好地解決**卡頓問題(擁有多台伺服器就另當別論)。
這種做法現在很常見,多看幾個**細心點就可以看出點門道。
下面對比一下跨域之前的ajax請求與跨域之後的請求:
之前:
$.post(wwwurl + "/home/deletebyid", , function(data) );
這裡呼叫的是post方式(一般比較方便快捷,但是對ajax不熟練的話不推薦一開始就這樣說使用),也可以用get。
要說的是,跨域請求並不支援post方式!也不是說完全不支援,使用post請求在做跨域的時候對編碼型別有限制,只允許content-type為
之後:
$.ajax(,datatype: "jsonp",
jsonp: "callback", //
傳遞給請求處理程式或頁面的,標識jsonp**函式名(一般為:callback).
jsonpcallback: function (){}, //
callback的function名稱.
success: function
(data)
});
這裡可以對比一下兩種方式的區別。
解決ajax跨域請求資料cookie丟失問題
前端 以jquery為例 需要加入 複製 如下 xhrfields crossdomain true,ajax nb crossdomain true,success function failurecallback function lj v,datatype datatype 程式設計客棧 伺服...
jQuery PHP跨域請求資料
jquery 1 獲取網域名稱 2function getdomain url 89 記錄訪客 10function recordvisitor 19 datatype jsonp 20 jsonp callback 21 jsonpcallback returnfun 22 success fun...
Ajax跨域請求
一 什麼是跨域請求 網域名稱它由http 協議 www 子網域名稱 baidu 主網域名稱 以及8080 埠號 組成,當另乙個網域名稱與其中任意一項對應不等的話,那麼我們說兩個網域名稱就是跨域的。如的頁面上我們要請求資料到上去,那麼就說這種請求是跨域請求。二 為什麼要講跨域請求 因為在一般的請求條件...