分别使用FlyJSONP和JQuery实现跨域的异步请求

直接上代码吧,介绍方面的东西都在代码注释里

首先是使用FlyJSONP实现跨域的异步请求

  1. <%@pagelanguage="java"pageEncoding="UTF-8"%>
  2. <scripttype="text/javascript"src=../../"js/flyjsonp.min.js"></script>
  3. <scripttype="text/javascript">
  4. functiongetJFBCustomState(){
  5. FlyJSONP.init({debug:true});//初始化FlyJSONP的实例,参数debug可设置为true或false
  6. FlyJSONP.post({
  7. url:'http://123.125.**.***:8088/ecpaycus/web/getCustomizeByPhoneNo',
  8. parameters:{phoneNo:'18601148104'},
  9. success:function(data){
  10. varcustomState=data.customState;
  11. alert('服务器返回结果为:'+customState);
  12. }
  13. /*
  14. success:function(data){
  15. varcustomState=data.customState;
  16. alert('服务器返回结果为:'+customState);
  17. },
  18. error:function(errorMsg){
  19. alert('22');
  20. console.log(errorMsg);
  21. }
  22. */
  23. });
  24. }
  25. </script>
  26. <spanstyle="color:blue;text-decoration:underline;cursor:pointer;"οnclick="getJFBCustomState();">点此完成定制</span>
  27. <%--
  28. ==========================================================================================
  29. FlyJSONP
  30. 主页:http://alotaiba.github.com/FlyJSONP/
  31. 概述:FlyJSONP是一个应用JSONP实现跨域请求的相当轻量级的JavaScript类库
  32. FlyJSONP不依赖于任何JavaScript框架,只需设置一些参数便能够用它实现跨域的POST和GET请求
  33. 补充:本示例在IE9.0.8112.16421和FireFox9.0.1上测试,均通过
  34. 另外,我是在这个网站发现它的-->http://site518.net/javascript-cross-domain-request/
  35. 用法:上面是客户端代码,下面是服务端代码
  36. StringphoneNo=request.getParameter("phoneNo"));
  37. //TODO...
  38. response.setContentType("application/json;charset=UTF-8");
  39. response.getWriter().print("{customState:'hasCustomized'}");
  40. 注意:服务端输出给客户端时,输出的必须是json字符串,否则客户端无法接收
  41. ==========================================================================================
  42. --%>
接下来就是使用JQuery实现跨域的异步请求
  1. <%@pagelanguage="java"pageEncoding="UTF-8"%>
  2. <scripttype="text/javascript"src=../../"js/jquery-1.7.1.min.js"></script>
  3. <scripttype="text/javascript">
  4. $(function(){
  5. $('#validateCustom').click(function(){
  6. $.getJSON('http://123.125.**.***:8088/ecpaycus/web/getCustomizeByPhoneNo?jsoncallback=?&phoneNo=18601148104',
  7. function(json){
  8. varcustomState=json.customState;
  9. alert('服务端返回结果为:'+customState);
  10. }
  11. );
  12. });
  13. });
  14. </script>
  15. <spanstyle="color:blue;text-decoration:underline;cursor:pointer;"id="validateCustom">点此完成定制</span>
  16. <%--
  17. ==========================================================================================
  18. 说明:本示例在IE9.0.8112.16421和FireFox9.0.1上测试,均通过
  19. 用法:上面是客户端代码,下面是服务端代码
  20. StringphoneNo=request.getParameter("phoneNo"));
  21. //TODO...
  22. Stringjsoncallback=request.getParameter("jsoncallback");
  23. StringjsonReturn="{customState:'hasCustomized'}";
  24. response.setContentType("application/json;charset=UTF-8");
  25. response.getWriter().print(jsoncallback+"("+jsonReturn+")");
  26. 注意:服务端输出给客户端时,输出的必须是json字符串,否则客户端无法接收
  27. 且,客户端请求时,必须提供回调函数名,并以参数形式放到请求的URL后面
  28. 服务端输出给客户端时,必须将接收到的回调函数名字放到json字符串的前面
  29. ==========================================================================================
  30. --%>

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值