$.getJSON()方法的 callback说明
$.getJSON()方法跨域 去取得服务器的json对象的时候,url的后缀最后带一个"callback=?"的参数作为成功的回调函数;如:
- var url = "${BIPJS}/intf/accountsOfRefuseEmail.jsp?act=add&siteId=${LANG.siteId}&accountId=${loginId}&callback=?";
- $.getJSON(url, {} , function(data) {
- var code = data.code;
- if(code == 0){
- $('#floatOne').myFadeIn();
- }
- });
此时返回的data是一个json对象;相应地,服务器返回字符串应该要这种样式:
- String callback = T.stringValue(getRequestParams(request,"callback"),"");
- JSONObject jo = new JSONObject();
- // put key/value in jo
- out.print(callback + "(" + jo + ")");
原理:Jquery在解析请求callback=?的时候,会自动生成一个callback=jsonp***的字符串,这个字符串jsonp***在成功回调的时候作为一个方法,被Jquey自动执行,参数是一个json格式的字符串(这里是data)。相应地;服务器返回的字符串要这种形式:jsonp***(JSONObject)。
如:刚上面的url被Jquey解析成:
- Request URL:http://localhost.pcauto.com.cn:12385/intf/accountsOfRefuseEmail.jsp?act=add&siteId=2&accountId=388&callback=jsonp1381976698163&_=1381976708919
服务器返回的字符串形式:
jsonp1381976698163({"code":0,"msg":"增加用户成功"})
Jquery的回调方法jsonp1381976698163(jsonStr)就是要把字符串jsonStr转换成josn对象,这里就是转换成data这个json对象
随机推荐
- 如何在Fedora 22上面配置Apache的Docker容器
在这篇文章中,我们将会学习关于Docker的一些知识,如何使用Docker部署Apache httpd服务,并且共享到Docker Hub上面去.首先,我们学习怎样拉取和使用Docker Hub里面的 ...
- 配置IIS Express 7.5以允许外部访问
默认配置文件位于:[我的文档]\IISExpress\config\applicationhost.config修改站点地址如:<binding protocol="http" ...
- MVC中使用AuthorizeAttribute做身份验证操作
代码顺序为:OnAuthorization-->AuthorizeCore-->HandleUnauthorizedRequest 如果AuthorizeCore返回false时,才会走H ...
- HD1064Financial Management
Problem Description Larry graduated this year and finally has a job. He's making a lot of money, but ...
- cvc-elt.1: Cannot find the declaration of element 'beans'
@(编程) 现象描述 导入的一个eclipse项目报错,各种方法都无法解决,报错信息如下: cvc-elt.1: Cannot find the declaration of element 'bea ...
- spring mvc为何多注入了个SimpleUrlHandlerMapping?
最近在调试项目时,debug DispatcherServlet时,发现handlerMappings属性包含了RequestMappingHandlerMapping.SimpleUrlHandle ...
- STM32先设置寄存器还是先使能时钟
http://zhidao.baidu.com/link?url=gdVNuIgLOJcV37QzbCx0IrFip5pskiPQDWpoZayr_xBEe120p4d_iWtrfDl1d4tSFaH ...
- 结合windows消息系统理解C#中WndProc函数和DefWndProc函数
Windows消息系统由3部分组成: 1.消息队列.Windows应用程序的消息是由Windows统一在一个消息队列中管理的. 2.消息循环.应用程序从Windows消息队列中获得自己 ...
- 为什么 Apple 开发者网站关闭是件好事?
作者:趋势科技 Apple 的开发者中心网站在 7 月 18 日因为安全漏洞或攻击而关闭.在他们的通知里,Apple 公司表示,这起安全事件可能导致开发商的姓名.通讯地址和电子邮件地址被盗取,虽然该公 ...
- SQL Server中行列转换
典型实例 一.行转列 1.建立表格 ifobject_id('tb')isnotnulldroptabletb go createtabletb(姓名varchar(10),课程varchar(10) ...