无法使用应用实例方法在 NestJS 中启用 CORS
Posted
技术标签:
【中文标题】无法使用应用实例方法在 NestJS 中启用 CORS【英文标题】:Unable to enable CORS in NestJS with app instance methods 【发布时间】:2019-03-06 21:26:08 【问题描述】:我无法为 NestJs 启用 CORS 进行开发,使用 main.hmr.ts 中的大多数内置方法如下:
const app = await NestFactory.create(AppModule, cors: true );
const app = await NestFactory.create(AppModule, cors: corsOptions... );
app.enableCors() ;
app.enableCors( corsOptions.. );
app.use(cors());
app.use( (req, res, next) =>
res.header('Access-Control-Allow-Origin', '*');
res.header('Access-Control-Allow-Methods', 'GET,PUT,POST,DELETE');
res.header('Access-Control-Allow-Origin', 'Content-Type, Accept');
);
感觉就像我在 main.hmr.ts 中所做的一切都被忽略了。
唯一有效的是在控制器中使用 @Header 装饰器,即 @Header('Access-Control-Allow-Origin', '*')。
这在开发过程中作为临时措施是可以的,但长期来看并不理想。
我检查了编译后的 javascript,看起来还不错。我在 Windows 和 MacOS 上都试过了;同样的问题。我可能做错了什么?
【问题讨论】:
这能回答你的问题吗? NestJS enable cors in production 【参考方案1】:我正在更新 main.hmr.ts,它仅用于生产中的 webpack。我应该更新 main.ts。
【讨论】:
以上是关于无法使用应用实例方法在 NestJS 中启用 CORS的主要内容,如果未能解决你的问题,请参考以下文章
如何解决在 NestJs 应用程序中应该是 Injectable 类的未实例化属性?