我正在开发一个项目,我需要一个有角度的网络应用程序才能访问基于节点/快速的后端,我正在尝试使用Cors。但是,快速服务器似乎不会发送Access-Control-Allow-Origin标头,我也不知道为什么。我试过创建一个中间件:
this.app.use((request, response, next) => {
response.header("Access-Control-Allow-Origin", "*");
next();
}
我还尝试使用setHeader(),header(),set()和append()为每个请求单独执行类似操作,但这些都不起作用。我目前正在使用cors npm包,但这也不能使用以下代码:
this.app.use(cors({
origin: "http://localhost/4200"
}));
this.app.options("*", cors({
origin: "http://localhost/4200"
})
);
我已经检查过这些都没有通过邮递员将相关标题添加到响应中。 Express正在添加“错误”标题,用于提供错误的人类可读描述,但不是“Access-Control-Allow-Origin”。
我是用TypeScript写的。
答案 0 :(得分:0)
Access-Control-Allow-Headers
header?答案 1 :(得分:0)
listen
之前检查了您的中间件是否已注册?如果两者都有保证,则必须有一个原因,具体取决于您的应用程序的其他部分。因此,您应该提供有关文件和目录的引导和结构的更多信息。
答案 2 :(得分:0)
原来问题不在于代码,而在于编译器设置。我删除并重新创建了tsconfig.json文件,它现在可以正常工作。