使用JSONP解决跨域问题-代码示例
来源:互联网 发布:淘宝品质工厂怎么加入 编辑:程序博客网 时间:2024/06/01 08:24
前段时间用JSONP解决了跨域问题,现在不用了,把代码思路记下来,今后说不定还用得上。
JS代码
//查询公告数据
function recentpost(){$.getJSON(cmsUrl+"/post/recentpost.json?jsoncallback=?",{count:count,categoryid:categoryid}, function(data){
//
});
}
JS代码,主要就是使用jquery的getJSON方法。
更多描述,来自jquery 文档。
jQuery.getJSON(url, [data], [callback])
概述
通过 HTTP GET 请求载入 JSON 数据。
在 jQuery 1.2 中,您可以通过使用JSONP形式的回调函数来加载其他网域的JSON数据,如 "myurl?callback=?"。jQuery 将自动替换 ? 为正确的函数名,以执行回调函数。 注意:此行以后的代码将在这个回调函数执行前执行。
参数
url,[data],[callback]String,Map,FunctionV1.0
url:发送请求地址。
data:待发送 Key/value 参数。
callback:载入成功时回调函数。
示例
描述:
从 Flickr JSONP API 载入 4 张最新的关于猫的图片。
HTML 代码:
<div id="images"></div>
jQuery 代码:
$.getJSON("http://api.flickr.com/services/feeds/photos_public.gne?tags=cat&tagmode=any&format=json&jsoncallback=?", function(data){ $.each(data.items, function(i,item){ $("<img/>").attr("src", item.media.m).appendTo("#images"); if ( i == 3 ) return false; });});
描述:
从 test.js 载入 JSON 数据并显示 JSON 数据中一个 name 字段数据。
jQuery 代码:
$.getJSON("test.js", function(json){ alert("JSON Data: " + json.users[3].name);});
描述:
从 test.js 载入 JSON 数据,附加参数,显示 JSON 数据中一个 name 字段数据。
jQuery 代码:
$.getJSON("test.js", { name: "John", time: "2pm" }, function(json){ alert("JSON Data: " + json.users[3].name);});
Java代码
@RequestMapping(value = "recentpost")
public void recentPost(Integer categoryid, String jsoncallback,
Integer count, Model model, HttpServletResponse response) {
if (categoryid == null) {
categoryid = DEFAULT_CATEGORY;
}
List<Post> list = postService.listRecent(categoryid, count);
// JSONObject json = new JSONObject();
// json.put("list", list);
// String str=json.toJSONString();
// model.addAttribute("callback", list);
String str = JSONObject.toJSONString(list);
str = jsoncallback + "(" + str + ")";
super.returnMessage(response, str);
}
使用JSON库,把jsonp格式的字符串发送到前端。记得函数名称jsoncallback这个参数。
- 使用JSONP解决跨域问题-代码示例
- 使用jsonp完美解决跨域问题
- 使用jsonp解决跨域问题
- JQuery jsonp 使用示例代码
- jsonp解决跨域问题
- jsonp解决跨域问题
- JSONP解决跨域问题
- jsonp解决跨域问题
- jsonp解决跨域问题
- 使用Jsonp解决跨域数据访问问题
- 使用jQuery与JSONP解决跨域问题
- jsonp和java联合使用解决跨域问题
- 如何使用jQuery的jsonp解决跨域问题
- 使用Jsonp解决跨域数据访问问题
- 使用JSONP解决Ajax跨域访问问题
- 使用JSONP解决跨域问题的实例
- 使用JSONP解决Ajax跨域访问问题
- jquery使用jsonp解决json跨域访问的问题
- 存储过程的HTTP post
- 织梦DEDECMS【问答模块】调用模板 头部及 底部的方法
- 【JavaScript】表单提交之前的前台处理检查三部曲
- Linux HA, MySQL cluster
- 日经社説 20150312 マイナンバー普及へ利用範囲の拡大を
- 使用JSONP解决跨域问题-代码示例
- commons-logging与log4j的区别与联系
- HDFS HA与QJM(Quorum Journal Manager)介绍及官网内容整理
- 手机安全卫士学习之APK检查自动升级
- Mac下android_sdk配置环境变量
- C++ 如何引用结构体数组作为函数形参
- 关于max-width:100% 不兼容的问题
- IOS学习 xcode设置项Architectures和Valid Architectures
- c++STL所有算法介绍