tl-微服务专题11-微服务统一网关实现框架zuul详解
敏感头信息和跨域:
现在的网关和每个微服务不能同时配置跨域是因为网关这边传输了跨域头,在网关添加如下配置可以使应用和网关都配置跨域:
zuul:
# 制定全局敏感Header,默认时Cookie,Set-Cookie,Authorization,由于后端服务需要Authorization,所以需要重新设置(!!重要!!)
sensitive-headers: cookie,Access-Control-Allow-Origin,Access-Control-Allow-Methods
什么是跨域:
跨域:指的是浏览器不能执行其他网站的脚本。它是由浏览器的同源策略造成的,是浏览器对javascript施加的安全限制。
例如:a页面想获取b页面资源,如果a、b页面的协议、域名、端口、子域名不同,所进行的访问行动都是跨域的,而浏览器为了安全问题一般都限制了跨域访问,也就是不允许跨域请求资源。注意:跨域限制访问,其实是浏览器的限制。后端互相调用是不存在跨域的。理解这一点很重要!!!
同源策略:是指协议,域名,端口都要相同,其中有一个不同都会产生跨域。
前后端分离项目因为前后端没有部署在一起,所以前端请求后端就已经跨域了,所以后端必须配允许跨域,但可指定只允许某几个跨域。(或者前后端部署在一个nginx里:https://www.jianshu.com/p/8fa2acd103ea ,浏览器直接请求ng通过ng转发。)
还没有评论,来说两句吧...