首先,你得理解为什么浏览器要限制跨域:
- 比如我公司的静态 js 和图片,被某大流量网站直接引用了,我流量不直接被刷爆?
- 某域名直接 iframe 之类嵌套,或者引用我的资料,打着李逵的名号,其实是李鬼。
所以,浏览器限制了跨域请求。
问:那么,我们开发时,想要访问线上接口怎么办?
答:我们可以用 vite 之类 nodejs 的代理功能,通过代理访问线上接口,代理一词的意思是我们访问本地的接口,代理服务器通过本地程序(非浏览器)转发到线上接口。
问:如果我们确实有线上项目的跨域请求的需求怎么办?
答:我们可以在服务器设置 Access-Control-Allow-Origin ,将我们自己人加入白名单。