【发布时间】:2020-10-21 14:05:04
【问题描述】:
我在 official documentation 找到了这个 -
我们建议不要合并策略。使用 [EnableCors] 属性或中间件,不能同时在同一个应用中。
我的场景非常简单——我想全局启用 CORS,但只为一个特定的控制器端点禁用它(端点用于前端小部件,它可以嵌入任何站点,所以我不能在该端点上使用 CORS)。
我不明白他们为什么不建议将这两种方法结合起来——他们不仅不推荐,而且根本行不通。
这是 CORS 的设置:
services.AddCors(opts =>
{
opts.AddPolicy(nameof(MyCorsPolicy), new MyCorsPolicy());
});
这是Configure启动方法中的注册
public void Configure(
IApplicationBuilder app,
IWebHostEnvironment env)
{
app.UseRouting();
app.UseCors(nameof(MyCorsPolicy));
app.UseHsts();
app.UseExceptionHandler(env);
app.UseAuthentication();
app.UseAuthorization();
app.UseEndpoints(endpoints => endpoints.MapControllers());
}
现在在我的 XY 控制器方法中,我的 [DisableCors] 属性不起作用。
任何帮助将不胜感激。谢谢。
【问题讨论】:
标签: c# asp.net-core cors asp.net-core-webapi