CORS跨域以及Cookie跨域
一、CORS跨域
首先跨域可以理解为指的并不是同一个项目!!!
举例: 本地同时部署两个web项目:web1,web2 域名分别是http://localhost:8081和http://localhost:8082
web1中向web2发起请求即为跨域!
此时浏览器会询问web2是否接受web1的请求(这里是一个options请求预检)。
如果web2中配置了允许web1的请求则可以正常响应,否则拒绝响应。
二、cookie跨域
前台如需从web1携带cookie发送到web2,此时涉及cookie跨域!
这里有几处需要注意:
Access-Control-Allow-Origin必须指定域名,不能为“*”。
Access-Control-Allow-Credentials必须为true。
前台发起请求时必须设置xhr.withCredentials = true;如图:
这样就可以在web2读到web1携带的cookie,web2代码如图
我这里是通过自己写的filter实现的,web.xml引入一下就OK。
个人学习记录,省的忘了!