跳到主要内容

跨域

跨域理解很简单,定义就是

那么真遇到跨域时,我们应该如何解决的了?

旧做法 jsonp,缺点明显。废弃

那么最佳解决方案是?

后端设置白名单支持哪些跨域。 比如设置 res.setHeader('Access-Control-Allow-Origin', 'http://localhost:3001'); 其他跨域头部属性也很重要

开发阶段跨域又如何调试通了?

加入前端使用 vite 脚手架,比如官网项目 A,localhost:3001,访问登录项目 B,localhost:3002,跨域了。那么需要在

常见问题

注意

Access to XMLHttpRequest at 'https://example.com' from origin 'https://hello.example.com' has been blocked by CORS policy: Response to preflight request doesn't pass access control check: No 'Access-Control-Allow-Origin' header is present on the requested resource.

假如已经配置了Access-Control-Allow-Origin,为什么还回报错? 其实是服务器预检请求没有支持 cors。