jquery $.getJSON()跨域請求
更新時間:2011年12月21日 20:48:07 作者:
以前總是沒搞明白是怎么回事,現(xiàn)在是迫不得已,就仔細看了看說明文檔,終于測試成功了,記下
1,同一域名下和其他的請求可以是一樣的
js:
var url="http://localhost:2589/a.ashx";
$(function(){
$.getJSON(url,function(data){
alert (data.Name);
})
});
服務(wù)器返回字符串:
{"Name":"loogn","Age":23}
2,不同域名下
js:
var url="http://localhost:2589/a.ashx?callback=?";
$(function(){
$.getJSON(url,function(data){
alert (data.Name);
})
});
服務(wù)器返回字符串:
jQuery1706543070425920333_1324445763158({"Name":"loogn","Age":23})
返回的字符串就是一個調(diào)用一個叫“jQuery1706543070425920333_1324445763158” 的函數(shù),參數(shù)是{"Name":"loogn","Age":23}。
其實這個很長的函數(shù)名是請求路徑中callback=?的作用,我想應(yīng)該是這樣的:$.getJSON方法生成一個對回調(diào)方法的引用的名字,換掉?。上面請求會變成
http://localhost:2589/a.ashx?callback=jQuery1706543070425920333_1324445763158&_=1324445763194,所服務(wù)器回返json時要處理一下,如:
string cb = context.Request["callback"];
context.Response.Write(cb + "(" + json + ")");
參數(shù)名callback也可換成jsoncallback,我想是怕沖突吧,jsoncallback應(yīng)該優(yōu)先檢測,沒有再檢測callback(沒測試?。?
?也可是具體的函數(shù)名,這樣回調(diào)函數(shù)就不能是匿名的了,用?生成只是jQuery為我們的一般操作提供的一個便利。
js:
復(fù)制代碼 代碼如下:
var url="http://localhost:2589/a.ashx";
$(function(){
$.getJSON(url,function(data){
alert (data.Name);
})
});
服務(wù)器返回字符串:
{"Name":"loogn","Age":23}
2,不同域名下
js:
復(fù)制代碼 代碼如下:
var url="http://localhost:2589/a.ashx?callback=?";
$(function(){
$.getJSON(url,function(data){
alert (data.Name);
})
});
服務(wù)器返回字符串:
jQuery1706543070425920333_1324445763158({"Name":"loogn","Age":23})
返回的字符串就是一個調(diào)用一個叫“jQuery1706543070425920333_1324445763158” 的函數(shù),參數(shù)是{"Name":"loogn","Age":23}。
其實這個很長的函數(shù)名是請求路徑中callback=?的作用,我想應(yīng)該是這樣的:$.getJSON方法生成一個對回調(diào)方法的引用的名字,換掉?。上面請求會變成
http://localhost:2589/a.ashx?callback=jQuery1706543070425920333_1324445763158&_=1324445763194,所服務(wù)器回返json時要處理一下,如:
復(fù)制代碼 代碼如下:
string cb = context.Request["callback"];
context.Response.Write(cb + "(" + json + ")");
參數(shù)名callback也可換成jsoncallback,我想是怕沖突吧,jsoncallback應(yīng)該優(yōu)先檢測,沒有再檢測callback(沒測試?。?
?也可是具體的函數(shù)名,這樣回調(diào)函數(shù)就不能是匿名的了,用?生成只是jQuery為我們的一般操作提供的一個便利。
您可能感興趣的文章:
- 用jQuery與JSONP輕松解決跨域訪問的問題
- 使用jsonp完美解決跨域問題
- js跨域請求數(shù)據(jù)的3種常用的方法
- js前端解決跨域問題的8種方案(最新最全)
- Nginx配置跨域請求Access-Control-Allow-Origin * 詳解
- 利用nginx解決cookie跨域訪問的方法
- Nginx跨域設(shè)置Access-Control-Allow-Origin無效的解決辦法
- Nginx服務(wù)器中處理AJAX跨域請求的配置方法講解
- Java跨域問題的處理詳解
- java解決請求跨域的兩種方法
- vue+Java后端進行調(diào)試時解決跨域問題的方式
- 使用CORS實現(xiàn)JavaWeb跨域請求問題的方法
- java 請求跨域問題解決方法實例詳解
- JS跨域(Access-Control-Allow-Origin)前后端解決方案詳解
相關(guān)文章
jquery 關(guān)鍵字“拖曳搜索”之“拖曳”以及 圖片“提示自適應(yīng)放大”效果 的實現(xiàn)
jquery 關(guān)鍵字“拖曳搜索”之“拖曳”以及 圖片“提示自適應(yīng)放大”效果 的實現(xiàn)2010-04-04
jQuery EasyUI API 中文文檔 - MenuButton菜單按鈕使用介紹
jQuery EasyUI API 中文文檔 - MenuButton菜單按鈕使用介紹,使用jQuery EasyUI的朋友可以參考下。2011-10-10
jQuery 獲取頁面li數(shù)組并刪除不在數(shù)組中的key
這篇文章主要介紹了jQuery 獲取頁面li數(shù)組并刪除不在數(shù)組中的key 的相關(guān)資料,非常不錯,具有參考借鑒價值,需要的朋友可以參考下2016-08-08
jQuery實現(xiàn)的form轉(zhuǎn)json經(jīng)典示例
這篇文章主要介紹了jQuery實現(xiàn)的form轉(zhuǎn)json功能,結(jié)合完整實例形式分析了jQuery將form表單數(shù)據(jù)封裝成json傳輸?shù)木唧w步驟與相關(guān)操作技巧,需要的朋友可以參考下2017-10-10
實時監(jiān)控input框,實現(xiàn)輸入框與下拉框聯(lián)動的實例
下面小編就為大家分享一篇實時監(jiān)控input框,實現(xiàn)輸入框與下拉框聯(lián)動的實例,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2018-01-01
淺析jQuery的鏈式調(diào)用之each函數(shù)
如果對于jquery的$()包裝器函數(shù)還不是很清楚,請先參閱我的上一篇日志:淺析jQuery的鏈式調(diào)用2010-12-12

