为什么后端没有收到请求?

前端的请求是这样的

console里报了预检请求头不对的错

后端是node
我用了一个中间件来打印所有请求

为什么后端没有收到login这个请求,也没收到预检请求

如何解决这个错误?

回答

你好,能够看看你的 proxy 是如何设置的?

这是触发跨域限制,被浏览器拦截了,因为端口不同。

常见跨域场景

URL                                      说明                    是否允许通信

http://www.domain.com/a.js

http://www.domain.com/b.js 同一域名,不同文件或路径 允许

http://www.domain.com/lab/c.js

http://www.domain.com:8000/a.js

http://www.domain.com/b.js 同一域名,不同端口 不允许

http://www.domain.com/a.js

https://www.domain.com/b.js 同一域名,不同协议 不允许

http://www.domain.com/a.js

http://192.168.4.12/b.js 域名和域名对应相同ip 不允许

http://www.domain.com/a.js

http://x.domain.com/b.js 主域相同,子域不同 不允许

http://domain.com/c.js

http://www.domain1.com/a.js

http://www.domain2.com/b.js 不同域名 不允许

跨域解决方案

1、 通过jsonp跨域
2、 document.domain + iframe跨域
3、 location.hash + iframe
4、 window.name + iframe跨域
5、 postMessage跨域
6、 跨域资源共享(CORS)
7、 nginx代理跨域
8、 nodejs中间件代理跨域
9、 WebSocket协议跨域

一般使用后端跨域资源CORS比较方便一点

以上是 为什么后端没有收到请求? 的全部内容, 来源链接: utcz.com/a/55102.html

回到顶部