1.跨域定义以及同源策略
2.跨域流程
非简单请求需要发送预检请求 除开简单请求的请求方式
简单请求
请求方法是以下三种方法之一:HEAD GET POST
HTTP的头信息不超出以下几种字段:Accept Accept-Language Content-Type Last-Event-ID
Content-Type:只限于三个值application/x-www-form-urlencoded、multipart/form-data、text/plain
像我们平常用的比较多的application/json格式的contentType 就要发送预检请求
预检请求顾名思义 就是先发送一个请求过去 看看能否通过 是不携带真实数据的
如果不通过 则会返回跨域相关错误 通过则会再发一次请求 会携带真实数据
3.跨域解决方案
1.用nginx来做转发 比较麻烦 一般用于项目初期 中期扩展比较麻烦
nginx的话就是让前端和网关部署在同一个域下,前端访问后端的时候先访问网关,再由网关转发到各个服务上
2.让服务器告诉预检请求可以跨域(添加响应头信息)
配置请求允许跨域