【发布时间】:2017-02-17 05:50:15
【问题描述】:
我正在做一个项目,我需要一个 Angular Web 应用程序才能访问基于节点/express 的后端,并且我正在尝试使用 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 写这个。
【问题讨论】:
标签: angularjs node.js express typescript