JSONP

2018-11-10  本文已影响0人  宇子豪

jsonp?

  • JSONP(JSON with Padding)是JSON的一种“使用模式”,可用于解决主流浏览器的跨域数据访问的问题。由于同源策略,一般来说位于 server1.example.com 的网页无法与不是 server1.example.com的服务器沟通,而 HTML 的<script> 元素是一个例外。利用 <script> 元素的这个开放策略,网页可以得到从其他来源动态产生的 JSON 资料,而这种使用模式就是所谓的 JSONP。用 JSONP 抓到的资料并不是 JSON,而是任意的JavaScript,用 JavaScript 直译器执行而不是用 JSON 解析器解析。

$.ajax

$.ajax({
dataType:'jsonp',
jsonp:'jsonp_callback',
url:'http://www.yiwuku.com/getdata',
//jsonCallback:'回调函数名'//如用不到回调函数可省略
success:function(data){
  alert(data)//跨域拿到了数据
},
});
    @RequestMapping("/getdata")
    @ResponseBody
    public String getdata(HttpServletRequest request){
        String callback = request.getParameter("jsonp_callback");
        return callback + "(" + "返回值" + ")";
    }

这样就实现了跨域拿数据了

上一篇 下一篇

猜你喜欢

热点阅读