zoukankan      html  css  js  c++  java
  • 跨域访问:jquery ajax jsonp的实现方法(jsp和action方式)

    [javascript]
    1. <mce:script language="javascript"><!--  
    2.     $(function(){      
    3.         $.ajax({  
    4.                    type: "get",  
    5.                    url: "www.sssss.com/ddd.do",  
    6.                    data: {  
    7.                         area : "ddd",  
    8.                         areaid : "2",  
    9.                         categorySz : ["",   
    10.                                     "",   
    11.                                     "",   
    12.                                     "",   
    13.                                     "",   
    14.                                     "208",   
    15.                                     "",   
    16.                                     "",   
    17.                                     "205",   
    18.                                     "205",  
    19.                                     "206"  
    20.                                     ,"207,250,251,252,253"  
    21.                                     ,"207,254"  
    22.                                     ,"207,255"  
    23.                                     ,"207,256"  
    24.                                     ,"207,257"  
    25.                                     ,"207,258"  
    26.                                     ,"207,259"],  
    27.                         typeSz : ["520,1201,201",   
    28.                                 "520,1201,202",   
    29.                                 "520,1202",   
    30.                                 "520,1203",   
    31.                                 "520,1204",   
    32.                                 "",   
    33.                                 "521,1201,201",   
    34.                                 "521,1201,202",   
    35.                                 "1201,202",   
    36.                                 "1202"  
    37.                                 , ""  
    38.                                 , ""  
    39.                                 , ""  
    40.                                 , ""  
    41.                                 , ""  
    42.                                 , ""  
    43.                                 , ""  
    44.                                 , ""],  
    45.                         categoryOrSz : ["",   
    46.                                     "",   
    47.                                     "",   
    48.                                     "",   
    49.                                     "",   
    50.                                     "",   
    51.                                     "",   
    52.                                     "",   
    53.                                     "",   
    54.                                     ""  
    55.                                     , ""  
    56.                                     , "250,251,252,253"  
    57.                                     , ""  
    58.                                     , ""  
    59.                                     , ""  
    60.                                     , ""  
    61.                                     , ""  
    62.                                     , ""]},  
    63.                    dataType : "jsonp",  
    64.                    jsonp: "callback",  
    65.                    async: false,  
    66.                    cache: false,  
    67.                    success: function(data){  
    68.                     if (data != null && data != "") {  
    69.                                                                                                                               
    70.                     }                         
    71.                    }  
    72.                 });  
    73.     });  
    74. // --></mce:script>  

    服务器端:

    代码很简单,就是输出一个字符串
    比如正常输出json应该是:[{"id":"1","name":"测试1"},{"id":"2","name":"测试2"}]
    jsonp 则输出: jsonpcallback([{"id":"1","name":"测试1"},{"id":"2","name":"测试2"}]) 其中“jsonpcallback”是客户端传过来的

    1. /** 
    2.  *  
    3.  * @param form 
    4.  * @param request 
    5.  * @param response 
    6.  * @return 
    7.  * @throws Exception 
    8.  */  
    9. public String ajaxGetMybusAllDataJsonp(ActionForm form,  
    10.         HttpServletRequest request, HttpServletResponse response)  
    11.         throws Exception {  
    12.     String callback = request.getParameter("callback");  
    13.     JSONObject res = new JSONObject();  
    14.       
    15.     /* 
    16.      * 处理方法 
    17.      *  
    18.      */  
    19.     res.put("d", "dddd");  
    20.     // 可以避免前台显示出现乱码  
    21.     response.setContentType("text/html");  
    22.     response.setCharacterEncoding("utf-8");  
    23.     PrintWriter out = response.getWriter();  
    24.     out.print(callback + "(" + res.toString() + ")");  
    25.     out.flush();  
    26.     out.close();  
    27.     return null;  
    28. }  
  • 相关阅读:
    C#--带参SQL语句数通用数据访问类
    VS 2017产品密匙
    关于编码中的字符和字节问题
    关于C++中的cin用法
    C++基础(一、基本语法,Hello World)
    Oracle查看用户所在的表空间
    静态变量、枚举、以及静态代码块的使用场景
    Java 枚举(enum) 详解7种常见的用法
    第一章 对象和封装
    摘抄Java反射
  • 原文地址:https://www.cnblogs.com/htys/p/3931634.html
Copyright © 2011-2022 走看看