通俗讲跨域

    • 什么是跨域?

跨域的全称是跨域资源共享

场景:当你请求的接口地址和现在前端文件服务所在的域(请求的协议,ip和端口)不同的时候,就会报错,如下图

    • 为什么会出现跨域?

跨域问题的产生其实是浏览器的同源策略造成的,同源策略是浏览器的保护机制,只允许网页请求同一域名下的服务。

同源策略的要求是3同:协议,域名和端口都要保持一致

    • 如何解决跨域问题?

    • 【配置后端】CORS

浏览器是否启用跨域保护机制根据后端配置来响应的,所以服务器端需要做一个允许跨域的配置即可

如何配置:

修改接口的响应头:Access-Control-Allow-Origin,值为*,,浏览器判断通过就会允许跨域

    • 【配置中间服务器】反向代理

意思是用一个代理服务器来代理真正的服务端发送请求

    • 【配置中间服务器】正向代理

意思是用一个代理服务器来代理客户端发送请求,一般用浏览器做代理服务器,这个直接在webpack里面配置

    • JSONP【不推荐】

其实是通过script标签的特性(无跨域限制)来实现跨域的,也需要服务器端配合,且只能用get方法, 有安全隐患,不推荐

猜你喜欢

转载自blog.csdn.net/qq_52006046/article/details/128665743