我正在使用 asp .net core 6.0 web Api。(我们正在从 3.1 迁移到 asp .net core 6.0)
我确实在我们的 asp .net core 6.0 项目中启用了 cors,并且早些时候(今天早上)工作正常。但是现在我遇到了 cors 错误。
错误:
从来源“http://localhost:4200”访问位于“http://localhost:5000/api/user/authenticate”的 XMLHttpRequest 已被 CORS 策略阻止:对预检请求的响应未通过访问控制检查:飞行前请求不允许重定向。
我撤销了我的 git 提交并进行了检查。仍然给出 CORS 错误
这是我的程序.cs
var app = builder.Build();
app.UseHttpsRedirection();
app.UseForwardedHeaders();
app.UseCors(builder => builder.WithOrigins("*")/*.AllowAnyOrigin()*/.AllowAnyHeader().AllowAnyMethod());
app.UseRouting();
app.UseAuthentication();
app.UseAuthorization();
相同的代码在 asp .net core 6.0 中运行良好。 现在也在 asp .netcore 3.1 项目中工作正常。
注意:我搜索了这个错误。并尝试与此答案相同 How to enable cors in ASP.NET Core 6.0 Web API project? .但它对我不起作用。
我做错了什么? 为什么会出现这个错误(今天早上我没有遇到这个错误。但是现在遇到这个错误。我也撤销了我的新提交。但是CORS错误)
是否有任何其他原因导致此 CORS 错误。我猜错误是在我的 asp.net core 6.0 项目上,因为 asp .net core 3.1 项目工作正常
最佳答案
app.UseCors 应该在 app.UseRouting() 之后;
根据官方文档 https://learn.microsoft.com/en-us/aspnet/core/security/cors?view=aspnetcore-6.0
关于c# - 无法在 asp .net core 6.0 Web Api 中启用 CORS,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/70879838/