跨域解决方案Jsonp原理解析
时间:2020-12-24 10:52:33|栏目:JAVA代码|点击: 次
这篇文章主要介绍了跨域解决方案Jsonp原理解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
1.什么是Jsonp?
Jsonp(JSON with Padding) 是 json 的一种"使用模式",可以让网页从别的域名(网站)那获取资料,即跨域读取数据。
为什么我们从不同的域(网站)访问数据需要一个特殊的技术( JSONP )呢?这是因为同源策略。
同源策略,它是由 Netscape 提出的一个著名的安全策略,现在所有支持 JavaScript 的浏览器都会使用这个策略。
2.使用Jsonp优缺点
优点:
1.可以跨域请求数据,摆脱同源策略的限制。
2.对浏览器比较友好,尤其低版本浏览器。
缺点:
1.只支持GET请求。
2.无法对请求错误进行获取和处理。
3.安全性较差。无法防止页面的注入漏洞。
3.Jsonp具体实现
前端
$.ajax({ url: 请求的url, type: "get", dataType: "jsonp", jsonp: "callBack", success: function(data) { //返回结果处理程序 } });
后端
@RequestMapping(value = "getAllData",method = RequestMethod.GET) @ResponseBody public String getAllData(@RequestParam("callBack") String callBack){ return callBack+"("+JSON.toJSONString(this.infoService.getAllData())+")"; }
阅读排行
- 1Java Swing组件BoxLayout布局用法示例
- 2java中-jar 与nohup的对比
- 3Java邮件发送程序(可以同时发给多个地址、可以带附件)
- 4Caused by: java.lang.ClassNotFoundException: org.objectweb.asm.Type异常
- 5Java中自定义异常详解及实例代码
- 6深入理解Java中的克隆
- 7java读取excel文件的两种方法
- 8解析SpringSecurity+JWT认证流程实现
- 9spring boot里增加表单验证hibernate-validator并在freemarker模板里显示错误信息(推荐)
- 10深入解析java虚拟机