色婷婷狠狠18禁久久YY,CHINESE性内射高清国产,国产女人18毛片水真多1,国产AV在线观看

jquery跨域訪問 post請(qǐng)求失敗

最近在使用jquery進(jìn)行跨域POST請(qǐng)求時(shí)遇到了一些問題,經(jīng)過一番探究,終于搞定了,下面和大家分享一下

我們都知道,如果要跨域發(fā)送請(qǐng)求,必須在響應(yīng)頭設(shè)置CORS,讓服務(wù)端允許跨域請(qǐng)求。但是有時(shí)候即使設(shè)置好了,依然會(huì)出現(xiàn)post失敗的情況。

這時(shí)候我們需要檢查一下說明文檔,發(fā)現(xiàn)jquery跨域請(qǐng)求使用的是jsonp方式,并且只支持get請(qǐng)求。所以如果我們想要跨域發(fā)送post請(qǐng)求,就必須手動(dòng)設(shè)置一下jqeury的一些參數(shù)。

$.ajax({
url: "http://example.com",
type: "post",
dataType: "jsonp",
jsonp: "callback",
data: {},
success: function (response) {},
error: function (XMLHttpRequest, textStatus, errorThrown) {}
});

上面是設(shè)置post請(qǐng)求的代碼。其中dataType設(shè)置為jsonp,jsonp的值是callback。這兩個(gè)是必須要設(shè)置的。除此之外,如果服務(wù)端需要我們傳遞一些特定的參數(shù),我們也可以在data中傳入。

好了,我們重新發(fā)送post請(qǐng)求,發(fā)現(xiàn)已經(jīng)可以成功發(fā)送了。

總結(jié):實(shí)際上,jquery并不支持跨域發(fā)送post請(qǐng)求,但是我們可以手動(dòng)修改一些參數(shù)和設(shè)置,使其支持post請(qǐng)求。需要注意的是,跨域請(qǐng)求可能會(huì)遇到一些安全性問題,為了確保系統(tǒng)的安全穩(wěn)定,建議盡量避免使用跨域。