通过浏览器解决跨域问题

跨域本质上是浏览器的安全设置,前端和后台的域名或端口不一样的情况下,浏览器会先发送一个 option 请求验证后台是否允许跨域。如果验证通过则发送正常的请求,如果不通过返回 403 错误信息,提示后台禁止跨域。

解决跨域问题有两种思路:

  1. 在后台代码加上 cors 协议的代码。 但是在生产环境中,如果前端和后台在同一服务器上的情况下,为了安全性最好去掉跨域代码。 这就造成在需要在发布时增加去掉跨域代码的操作,有点麻烦。

  2. 从浏览器入手,以 MAC 的 Chrome 浏览器为例: 先新建一个文件夹,之后在 terminal 里用命令启动禁止了网络安全的 Chrome。

open -n /Applications/Google\ Chrome.app/ --args --disable-web-security --user-data-dir=/Users/username/Documents/MyChromeDevUserData

这样也可以在本地跑前端代码调试服务器上的后台数据了。