`
sbl2255
  • 浏览: 211773 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

Jquery跨域jsonp

 
阅读更多

先说说json和jsonp到底是什么事;

 

1.json是一种非常方便灵活的字符串组合,用{}、[]包裹着;

 

2.json的数据类型有字符、数字、日期、布尔和空(null)

 

3.jsonp还是最近做一个Jquery跨域才遇到的,不过没有找到明确的定义,个人觉得和普通的ajax没什么特别大的区别,重要的就是在dataType,一般返回是json,可是到跨域的时,需要将json换成jsonp;查看url发生了变化,在url中添加了一个callback参数;

 

$.ajax({
				url: "http://10.10.140.9:8089/jxt/CompiereServlet?action_name=ajaxdict&action_para=1",
				method: "get",
				dataType:"jsonp",
	            jsonp:"jsoncallback",
				success:function(data, status) {
					$.each(data,function(i,n){
						obj.append("<option value='"+i+"'>"+n+"</option>");
					});
				}
			});

 

4.对于服务端,只需要获得jsoncallback

 

String jsoncallback = request.getParameter("jsoncallback");
response.getWriter.writer(jsoncallback+"("+returnJSONValue+")");

 

这样达到了异步请求json;

 感觉只是Jquery对jsonp封装了,因为ajax底层是通过xmlhttprequest请求的和jsonp没有任何关系…………

所以这还是2个东西;

 

 

 

 

 

 

 

 

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics