jsonp 跨域

摘要:
适用场景:跨域值传输的ajax端:$ajax({url:“XXXXX”,dataType:'jsonp',data:{},jsonp:'callbackparam',jsonp定义的callbackparam将随机向服务器发送字符串“Jquery…..”作为返回值成功的函数名:function(result){//dosomething}});1服务
适用场景:跨域传值


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", "*");


   

免责声明:文章转载自《jsonp 跨域》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇MySQL使用json_extract 函数过滤满足条件的json串C++学习之开发环境搭建篇(一)下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

vue项目微信端清理缓存问题解决

vue为单页面前端框架,清理缓存,常规的方式是添加html头部meta,如果逻辑里面是需要使用缓存的,这种方式不建议使用,代码片段如下: <html manifest="IGNORE.manifest"> <head> <meta charset="utf-8"> <meta name="vie...

jQuery UI Autocomplete是jQuery UI的自动完成组件

jQuery UI Autocomplete是jQuery UI的自动完成组件,是我用过的最强大、最灵活的Autocomplete,它支持本地的Array/JSON数组、通过ajax请求的Array/JSON数组、JSONP、以及Function(最灵活)等方式来获取数据。 支持的数据源 jQuery UI Autocomplete主要支持字符串Arr...

Android Volley框架的几种post提交请求方式

首先简单描写叙述一下Google的Android开发团队在2013年推出的一个网络通信框架Volley.它的设计目标是进行数据量不大,但通信频繁的网络操作,而对于大数据量的网络操作,比方下载文件等,Volley的表现就不尽如人意。 在app开发中,我们最常见的就是从appclient向服务端发一个http请求.对于两种主要的web请求方式get和post...

实现带有进度条的多文件上传

应用RESPONSE.WRITE实现带有进度条的多文件上传   前几天,写过一篇随笔“使用RESPONSE.WRITE实现在页面的生命周期中前后台的交互”。说是交互,实际上也主要是在ASP.NET的页面周期中 从后台利用RESPONSE.WRITE向前台即时的推送内容。   该篇随笔算是对上一篇文章的实际应用,利用RESPONSE.WRITE的这个特性实...

[转]angular 禁止缓存

本文转自:https://www.cnblogs.com/jonney-wang/p/9797906.html angular 单页面开发,会存在和管理很多HTML和JS文件,缓存有时是个麻烦。 在开发和测试阶段,F12调出调试工具,禁止缓存F5刷新下就好了。 但是在客户那里缓存就体验效果不好,甚至认为有问题,联系客服,影响工作效率。 主要做几点就可以了,...

node 访问第三方API

1.安装request模块 npm install request --save 基本形式 //request(options,callback) request({ url: url,//请求路径 method: "POST",//请求方式,默认为get headers: {//设置请求头 "conte...