下面图片是后端代码 不知道为什么只要添加了事件监听,就会报一个跨域的错
这个问题还是第一次遇到
看错了,sorry!!
cors解决跨域问题,其实跟前端http请求的库也有关系,例如jquery的ajax 和 axios 去请求同一个后端,可能一个可以一个不可以。一般情况这个头设置为 req的 origin 属性
就是从哪个地址请求,这里就设置成了哪个地址。 具体参考cors 库
@lileilei 作者设置的确实是后端响应头
继续放图,看看head里面返回的到底是什么.
这是具体的请求信息
这里我开始xhr.upload.onprogress是放在open方法之前的,但是报的错依旧是跨域错误,只要屏蔽xhr.upload.onprogress这个内容就可以正常执行。
如果后端设置响应头成功,那么浏览器的Response Headers里会显示的,5L图里并没有显示,说明设置不生效。另外cors也针对post/get/option方法的,你看后端设置有没有成功。要我说,直接引入cors库吧,省事。
@ZhaoHongzcyh 貌似是options的请求有问题,所以后面的post就终止了.
试试这个
app.all('*', function (req, res, next) {
res.header("Access-Control-Allow-Origin", "*");
res.header('Access-Control-Allow-Methods', 'PUT, GET, POST, DELETE, OPTIONS');
//res.header("Access-Control-Allow-Headers", "*");
res.header('Access-Control-Allow-Headers', 'Authorization,Content-Type,Accept,Origin,User-Agent,DNT,Cache-Control,Keep-Alive,guid,token,version');
if (req.method.toLowerCase() === "options") {
res.send()
} else {
next();
}
});
不好意思,现在才看到,今天下午项目出现了一点问题,没有及时回复。我等会儿回去之后尝试一次,谢谢了@178220709
该问题目前尚未解决。。请大佬们提供帮助