最近公司開發的專案中很多地方需要跨域ajax請求,例如幾個子網域下
http://a.****.com/index123.aspx,
http://b.****. com/index2.aspx
都要請求用戶json信息,然後再對數據進行處理,起初我和同事們試了很多種方法,使用$.ajax() 無論是get或post方法都會引起uri deny的錯誤。一番GG之後發現了解決方法,也了解其中的原因。
jquery從1.2開始,.getJSON就支援跨域操作了。使用jquery.getJSON()方法可以解決跨域問題。實例如下
前台
HTML中JS程式碼
function gettst2() {
$.getJJSON("http: //ucenter.xxxx.com.cn/ajax/test.aspx?callback=?", { id: "123456", site: "01" },
function(data) {
alert(data.htmls);
document.getElementById("shows").innerHTML = data.htmls;
});
}
gettst2();
ASPX.cs檔案中處理為
string jsoncall = Request.QueryString("callback); .Write(jsoncall + "({htmls:測試001})");