国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 開發(fā) > AJAX > 正文

Ajax跨域查詢完美解決通過$.getJSON()實現(xiàn)

2024-09-01 08:29:02
字體:
來源:轉載
供稿:網(wǎng)友
原因:瀏覽器安全上做了限制,禁止ajax跨域獲得數(shù)據(jù)。
解決方法:通過jquery提供的$.getJSON()可以跨域獲得JSON格式的數(shù)據(jù)。優(yōu)點:兼容性強。

Java后臺代碼:
代碼如下:
protected void doPost(HttpServletRequest req, HttpServletResponse resp)
throws ServletException, IOException {
String callback =req.getParameter("callback");//jquery生成的自定義函數(shù)名
resp.setCharacterEncoding("UTF-8");
resp.setContentType("text/html;charset=utf-8");
PrintWriter out = resp.getWriter();
//返回json格式字符串,注意向前臺輸出的格式必須為 callback(json格式的字符串);
//callback是jquery生成的自定義函數(shù)名,返回這種格式,前臺jquery代碼會自動替換
//回調函數(shù)為此callback函數(shù),從而達到跨域的效果,網(wǎng)上還有其他的跨域方案如:AJAJ
//原理應該也是和此方法一樣。缺點是:返回數(shù)據(jù)量不宜過大,安全性差,建議重要數(shù)據(jù)不
//要通過這種形式傳遞。
out.print(callback+"({name:'111',sex:'222'});");
out.flush();
out.close();
}

Js前臺調用代碼:
代碼如下:
$(function(){
//需要傳的參數(shù),可以不傳。
var data= {param1:"param1",param2:"param2"};
//注意url一定要以callback=?的形式拼接,callback參數(shù)名可以自定義,
//但后臺必須也要同步獲取的參數(shù)名
var url = 'http://192.168.1.216:8080/DSFA/getUser?callback=?';
$.getJSON(url,data,function(backdata){
//其實后臺返回的函數(shù)已經(jīng)替換為此函數(shù),所以backdata
//就是你從后臺傳過來的json對象。
alert(backdata);
});
})

如果有不明白的地方,請留言....
發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 泰州市| 突泉县| 康乐县| 黔南| 东乡族自治县| 元朗区| 开封县| 巴林右旗| 胶州市| 安宁市| 喜德县| 凯里市| 淮南市| 丹东市| 梅河口市| 黎平县| 保定市| 达拉特旗| 保康县| 九寨沟县| 繁昌县| 苍溪县| 黎川县| 汝南县| 罗江县| 铅山县| 敦煌市| 襄汾县| 临潭县| 正宁县| 翁源县| 东台市| 响水县| 陆良县| 龙岩市| 霍邱县| 灵川县| 盖州市| 丰城市| 连南| 丹东市|