跨域出现的场景:
1. 前后端分离项目开发
2. 前端真的是想去请求其它IP、PORT下的api接口
跨域:
只有web前端会出现的情况,浏览器的保护机制。
请求的IP、端口和当前在访问的网站不同,就会产生跨域。
跨域的出现:
例如在自己的网站,需要从百度接口获取内容,以前端角度去请求内容,就会产生跨域。
跨域的运行机制:
前端访问跨域网站接口,会自动发送一个OPTIONS请求,之后在跟随一个自己的请求,如果OPTIONS请求被拒绝,后端的请求则失败,如果OPTIONS请求后端设置通过,第二个请求后端没有设置通过,照样是请求失败。
后端的解决跨域的方式1(Vue开发环境下,代理、跨域携带cookie配置):
https://www.cnblogs.com/zezhou/p/13997819.html
后端解决方式2:
使用Ngnix做代理,由Nginx返回静态文件和它和后端交互。
前提:不涉及第三方接口时候
使用场景:项目上线时候使用
后端解决方式3(跨域只是浏览器的限制):
前端请求自己的后端接口,后端去请求第三方的接口,拿到内容,给前端返回。
使用场景:项目上线了,第三方后端没有做跨域处理时候(伪造前端式请求,通过requests模块)