Ajax跨域查询完美解决通过$.getJSON()实现


原因:浏览器安全上做了限制,禁止ajax跨域获得数据。
解决方法:通过jquery提供的$.getJSON()可以跨域获得JSON格式的数据。优点:兼容性强。

Java后台代码:

复制代码 代码如下:

protected void doPost(HttpServletRequest req, HttpServletResponse resp)
throws ServletException, IOException {
String callback =req.getParameter("callback");//jquery生成的自定义函数名
resp.setCharacterEncoding("UTF-8");
resp.setContentType("text/html;charset=utf-8");
PrintWriter out = resp.getWriter();
//返回json格式字符串,注意向前台输出的格式必须为 callback(json格式的字符串);
//callback是jquery生成的自定义函数名,返回这种格式,前台jquery代码会自动替换
//回调函数为此callback函数,从而达到跨域的效果,网上还有其他的跨域方案如:AJAJ
//原理应该也是和此方法一样。缺点是:返回数据量不宜过大,安全性差,建议重要数据不
//要通过这种形式传递。
out.print(callback+"({name:'111',sex:'222'});");
out.flush();
out.close();
}

Js前台调用代码:
复制代码 代码如下:

$(function(){
//需要传的参数,可以不传。
var data= {param1:"param1",param2:"param2"};
//注意url一定要以callback=?的形式拼接,callback参数名可以自定义,
//但后台必须也要同步获取的参数名
var url = 'http://192.168.1.216:8080/DSFA/getUser?callback=?';
$.getJSON(url,data,function(backdata){
//其实后台返回的函数已经替换为此函数,所以backdata
//就是你从后台传过来的json对象。
alert(backdata);
});
})

如果有不明白的地方,请留言....



相关阅读:
javascript删除数组重复元素的方法汇总
js仿3366小游戏选字游戏
node-http-proxy修改响应结果实例代码
Win10安装率高暴虐Win8!你就是第二个Vista
如何让安卓(Android)子控件超出父控件的范围显示
详细了解CSS中的class与id区别及用法
多个checkbox被选中时如何判断是否有自己想要的
Linux系统的电脑上调整屏幕亮度的方法
如何创建一个WinXP的域环境并将计算机加入到域中
《JavaScript高级编程》学习笔记之object和array引用类型
jquery+json实现数据二级联动的方法
node.js连接mongoDB数据库 快速搭建自己的web服务
PHP中开启gzip压缩的2种方法
win7电脑系怎么设置不睡眠、不自动黑屏?
快速导航
PHP MySQL HTML CSS JavaScript MSSQL AJAX .NET JSP Linux Mac ASP 服务器 CMS SQL jQuery C# C++ java Android IOS oracle MongoDB PostgreSQL SQLite 交通频道 佳木斯-大同 平湖-济南 重庆-广元 长乐-江都 玉溪-柳州 固原-恩施 大丰-山南 遵化-安庆 吉安-绍兴 山南-随州 宝鸡-海口 保山-合肥 重庆-邢台 四平-济宁 抚州-七台河 潮州-日照 寿光-昭通 乌鲁木齐-广安 乐清-荥阳 瓦房店-曲阜 天水-芜湖 东台-广安 苍南-榆林 黄南-池州 枣庄-芜湖 宁波-襄阳 亳州-唐山 泰安-松原 塔城-濮阳 衡水-菏泽 溧阳-东莞 浏阳-聊城 崇明-平顶山 乐山-福清 郑州-乌海 池州-胶州 长兴-资阳 章丘-七台河 拉萨-阳江 宜兴-乐清 鹤岗-扬州 景德镇-朝阳 海门-韶关 松原-宁海 吴忠-酒泉 凉山-德宏 四平-南阳 河津-昌吉 崇左-邯郸 商洛-凉山 朔州-西宁 安康-达州 温岭-海西 新密-湛江 衢州-乌兰浩特 平度-青州 江阴-河津 象山-十堰 淮安-黄山 盐城-石家庄 德州-长乐 三河-邢台 邹城-苍南 石河子-南平 珠海-齐齐哈尔 南京-临夏 江门-义马 商丘-鹰潭 乐清-大庆 泰兴-安宁 呼和浩特-海盐 临夏-台州 辽阳-舟山 大同-浏阳 咸宁-白山 东阳-滕州 江阴-景德镇 怒江-桐乡 松原-雅安 安阳-天门 鹰潭北-邵阳北 延安-辛集 包头北-昆独仑召 安陆-四平 吉林-江源 侯马-洪洞 石泉县-云梦 六地沟-平顶庙 南昌西-西宁 鄂州-榆次 阿城-永康 宣威-亳州 姜家-乌尔旗汗 温州-固始 池州-祁东 荆州-将乐 唐河-鲁山 获嘉-榆社 昂昂溪-富拉尔基 临江场-铜罐驿 怀化南-芷江 克山-秦家 饶阳-定边 滁州-南靖 沈阳北-杨陵 五十家子-三把火 杨柳青-子长 梁平-青田 加南-大乌苏 孙吴-李家 新天-团结 向塘-咸阳 韶关东-宜春 邓州-柳园 海浪-宁安 蚌埠-安顺 新沂-聊城 库伦-布敦化 商丘南-大营镇 桃村-怀化 兴城-开通 天津-双城北 朝阳村-哈达阳 沂南-莱西 新高峰-沈阳 文登东-曲阜东 驼腰岭-八仙筒 莱西北-咸宁北 裴德-东海 麻城-枣庄西 东通化-南杂木 大营镇-祁东 平邑-乳山 福鼎-霞浦 喀喇其-乌鲁布铁 湖州-蚌埠南 仙游-南城 邢台-苏州 昆山-太阳升 郓城-衡水 潼关-桃村 平南南-广州 广水-周口 南城-漳州 柳园-商洛 诸暨-益阳 江都-南京 四分地-纪家沟 株洲-荆门 芜湖-哈密 建三江-双龙山 阿城-北京 南昌-开封 苏州-诏安 古源-六合镇 文地-零陵 郑州-乐都 信阳-阳谷 塘沽-嵯岗 武夷山东-玉山南

Copyright © 2016 phpStudy |