jquery自身的功能是不支持的,但是你可以基于jquery實現(xiàn)跨域post。

成都創(chuàng)新互聯(lián)公司專注于鐵門關(guān)企業(yè)網(wǎng)站建設(shè),成都響應(yīng)式網(wǎng)站建設(shè)公司,商城網(wǎng)站建設(shè)。鐵門關(guān)網(wǎng)站建設(shè)公司,為鐵門關(guān)等地區(qū)提供建站服務(wù)。全流程定制網(wǎng)站建設(shè),專業(yè)設(shè)計,全程項目跟蹤,成都創(chuàng)新互聯(lián)公司專業(yè)和態(tài)度為您提供的服務(wù)
jquery本身只支持jsonp跨域,但是jsonp的原理限制了只能支持get。
如果想要實現(xiàn)原生jquery跨域,在你的請求地址的head里面加上Access-Control-Allow-Origin,值設(shè)置成調(diào)用該API的域名(或者*),優(yōu)點是代碼修改少,前端js代碼無需任何改動。
或者用iframe + window.name方式,比較麻煩,后端前端都要改,優(yōu)點是兼容性強。
或者用postMessage,優(yōu)點是方便,缺點IE支持的不是很好。
用JSONP可以實現(xiàn)ajax跨域訪問:
jQuery.ajax({
url: '',
type: 'GET',
dataType: "jsonp", // 注意dataType是jsonp
cache: false,
success: function(data){
alert(data.key); //這里就把你傳入的123顯示出來
}
});
不知道你后臺用的是什么語言,如果是JAVA,可以像這樣寫:
public void jsonp() {
String arg = this.getRequest().getParameter("arg");
this.writeResponse("({key:'" + arg + "'})");
}
可以
同學(xué)你好,是可以的。 常用的jsonp是一種跨域通信的手段,它的原理其實很簡單:首先是利用script標(biāo)簽的src屬性來實現(xiàn)跨域。 通過將前端方法作為參數(shù)傳遞到服務(wù)器端,然后由服務(wù)器端注入?yún)?shù)之后再返回,實現(xiàn)服務(wù)器端向客戶
分兩種情況:
一、您有目標(biāo)網(wǎng)站的修改權(quán)限,可以直接使用$.getJSON();
二、您沒有目標(biāo)網(wǎng)站的修改權(quán)限,可以使用php的fopen()函數(shù),然后再用jquery的$.get();
兩個函數(shù)的用法大同小異,根據(jù)您的情況,沒有銀行的修改權(quán)限,
那么先做一個php獲取銀行的匯率,
$.get("get.php",{"m1":"貨幣1","m2":"貨幣2"},function(data,status){
//回調(diào)函數(shù)寫這里,比如$("div").html(data);
}):
直接點擊相當(dāng)于在瀏覽器地址欄輸入網(wǎng)址后進(jìn)行瀏覽,這當(dāng)然不存在跨域問題。而ajax是由程序自動完成的,這就相當(dāng)于在網(wǎng)頁瀏覽者不知情的情況下網(wǎng)頁腳本自動去獲取其他域的數(shù)據(jù)資源,而這正是瀏覽器防跨域機制的目的所在!
使用jquery.getJSON可以取到支持jsonp的服務(wù)端的數(shù)據(jù),用插件的話我只用過FlyJSONP,這個可以實現(xiàn)跨域的get和post請求,你可以看下這個插件的說明
網(wǎng)站標(biāo)題:跨域jquery,跨域問題解決方案
文章鏈接:http://chinadenli.net/article25/dsgphci.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供商城網(wǎng)站、App設(shè)計、用戶體驗、網(wǎng)頁設(shè)計公司、網(wǎng)站制作、網(wǎng)站收錄
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)