什么是跨域请求,怎么解决?


什么是跨域请求,怎么解决?

 

跨域指的是从一个域名去请求另外一个域名的资源。即跨域名请求!跨域时,浏览器不能执行其他域名网站的脚本,是由浏览器的同源策略造成的,是浏览器施加的安全限制。

解决跨域的办法:

通过jsonp跨域

document.domain + iframe跨域

location.hash + iframe

window.name + iframe跨域

postMessage跨域

跨域资源共享(CORS)

nginx代理跨域

nodejs中间件代理跨域

WebSocket协议跨域

Vue解决跨越:

1)在Vue中最推荐的是CORS,全称为 Cross Origin Resource Sharing(跨域资源共享)。

这种方案对于前端来说没有什么工作量,和平时发请求写法上没有任何区别,工作量基本都在后端这里,使用CORS前端不需要配置proxytable。

每一次请求,浏览器必须先以 OPTIONS 请求方式发送一个预请求,从而获知服务器端对跨源请求所支持 HTTP 方法。在确认服务器允许该跨源请求的情况下,以实际的 HTTP 请求方法发送那个真正的请求。

2)vue cli30修改配置信息需要新建vue.config.js文件,在module.exports方法的devServer对象中proxy 选项来添加代理配置,当前端没有匹配到当前路由时就会被代理到服务器接口地址。


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM