美文网首页
涨知识:前端跨域

涨知识:前端跨域

作者: 毛毛_000e | 来源:发表于2019-11-22 10:18 被阅读0次

浏览器出于安全考虑,有同源策略,也就是说如果协议、域名、端口有一个不同请求就会失败

1、JSONP

原理就是利用script标签没有同源策略限制的漏洞,通过script标签的src属性指向需要请求的地址,并指定一个回调函数来处理数据

<script src="http://domain/api?param1=a&param2=b&callback=jsonp"></script>

<script>

functionjsonp(data){console.log(data)}

</script>

优点是使用简单并且兼容性好,缺点是只允许个get请求

2、CORS

需要前端和服务端共同来实现,浏览器会自动进行CORS通信,服务端需要在响应头中设置Access-Control-Allow-Origin为允许访问的域名,如果是通配符的话则表示所有网站都可以访问

3、document.domain

该方法只允许二级域名相同的网站进行访问。例如a.test.com和b.test.com

在页面文件中写入document.domain="test.com"就行,表示二级域名都相同就可以实现跨域

4、postMessage

该方法用于在页面中访问嵌入的第三方页面的数据,一个页面发送消息,另一个页面接收消息

//发送消息端

window.parent.postMessage('message','http://www.a.com')

//接收消息端

var mc=new MessageChannel()

mc.addEventListener('message',event->{

var origin=event.origin

if(origin == 'http://www.a.com'){

console.log("验证通过!")

}

})

相关文章

  • 涨知识:前端跨域

    浏览器出于安全考虑,有同源策略,也就是说如果协议、域名、端口有一个不同请求就会失败 1、JSONP 原理就是利用s...

  • 关于设置env等环境变量的思考

    1、如何处理跨域后台处理跨域前端处理跨域浏览器处理跨域 前端本地处理跨域:代理线上跨域的处理方式:Nginx反向代...

  • 浅谈前端跨域问题

    最近由于公司的一个项目需求需要前端解决跨域问题,因此学习了下跨域的相关知识,这里做一个总结,方便后期查阅。在讲跨域...

  • 跨域解决方案(史上最易懂)

    跨域总结 1.跨域思路 跨域解决方案一般分为两种:前端解决,后端解决 1.1 前端解决方案 通过前端解决的思想就是...

  • 浏览器跨域的那些事

    整理中 目标: 了解跨域 解决跨域 服务器配置跨域(java, nginx) 前端调试时配置解决跨域 一、什么是跨...

  • 前端跨域

    CORS跨域 1.CORS跨域-服务端设置,前端直接调用说明:后台允许前端某个站点进行访问 2.JSONP跨域-前...

  • AJAX 跨域解决方案

    一、跨域基础知识 #前后端分离(服务器) - 前端资源(html)- server-a 提供前端静态资源 - 后端...

  • vue-cli proxyTable配置

    前端的跨域转发 后端不需要配置,前端就可以实现跨域 proxyTable 的通常配置 这样就可以实现基本的跨域转发...

  • 记一次浏览器预检请求跨域问题的踩坑

    通用的跨域处理方案 如果你是一枚前端工程师,我想应该或多或少对浏览器跨域请求有一些了解。 跨域的详细知识,就不再这...

  • django跨域配置

    前言——跨域请求 前端对Cross-Origin Resource Sharing 问题(CORS,中文又称'跨域...

网友评论

      本文标题:涨知识:前端跨域

      本文链接:https://www.haomeiwen.com/subject/kwdfwctx.html