zoukankan      html  css  js  c++  java
  • jsonp 跨域

    适用场景:跨域传值
    
    
    ajax端:
    
     
    
     $.ajax({  
    
       url:"XXXXX",  
    
            dataType:'jsonp',  
    
            data:{},  
    
            jsonp:'callbackparam',        jsonp定义的callbackparam,会随机的向服务端发送一段字符串 'Jquery.....'    该字符串将作为返回值的函数名
    
            success:function(result) { 
    
          //do something
    
            }
    
        }); 
    
     1 服务端(java):  
     2    /**
     3      * 方法描述:展示所有商品
     4      * 作   者:赵       鹏
     5      */
     6     @GetMapping("showGoods")
     7     @ResponseBody
     8     public void showGoods(HttpServletResponse response, HttpServletRequest request) throws IOException {
     9         
    10         //设置字符格式
    11         response.setHeader("Content-type", "text/html;charset=utf-8");  
    12         
    13         List<Grounding> grounding = groundingService.showGoods();
    14         
    15         Gson gson = new Gson();  //也可以用   JSONObject /    JSONArray 或者 FastJson 等json工具
    16         
    17         String json = gson.toJson(grounding);
    18         
    19         String parameter = request.getParameter("callbackparam");  //获得ajax传来的随机函数名
    20         
    21         System.out.println(parameter);
    22         
    23         response.getWriter().print(parameter + "(" + json + ")");  //并拼接到返回值中 在使用小括号将json数据拼接起来 
    24 
    25      //这样ajax端就会的到一个 我们自己 构造的一个 function 函数  最后在success中执行
    26 
    27 
    28     }    

     跨域的另一种解决思路:

    // 处理跨域请求
    response.setHeader("Access-Control-Allow-Origin", "*");


       

  • 相关阅读:
    springboot设置请求超时
    Dockerfile 中 ENTRYPOINT 与 CMD 的区别
    iptables
    git commit statistics
    query spring mongo limit or skip test
    创建证书
    Linux基本网络配置
    k8s
    iis express添加网站,并启动
    用cmd的方式执行exe程序
  • 原文地址:https://www.cnblogs.com/zhao-blog/p/6669621.html
Copyright © 2011-2022 走看看