C# .NET Core-启用CORS后仍出现CORS错误
我试图调用WebAPI方法来获取一些数据,但它抛出了一个C# .NET Core-启用CORS后仍出现CORS错误,c#,asp.net-core,angular5,cross-origin-read-blocking,C#,Asp.net Core,Angular5,Cross Origin Read Blocking,我试图调用WebAPI方法来获取一些数据,但它抛出了一个跨源读取阻塞(CORB)阻塞的跨源响应https://localhost:44332/api/Controller/Action 使用MIME类型text/html。即使我在ConfigureServices方法中启用了CORS,并在启动时在Configure方法中使用了策略 public void ConfigureServices(IServiceCollection services) { s
跨源读取阻塞(CORB)阻塞的跨源响应https://localhost:44332/api/Controller/Action 使用MIME类型text/html。
即使我在ConfigureServices方法中启用了CORS,并在启动时在Configure方法中使用了策略
public void ConfigureServices(IServiceCollection services)
{
services.AddCors(options =>
{
options.AddPolicy("AllowAll",
builder =>
{
builder
.WithOrigins("http://localhost:4200/")
.AllowAnyMethod()
.AllowAnyHeader()
.AllowCredentials();
});
});
services.AddMvc();
}
public void Configure(IApplicationBuilder app, IHostingEnvironment env)
{
.....
app.UseCors("AllowAll");
app.UseHttpsRedirection();
app.UseStaticFiles();
app.UseCookiePolicy();
app.UseMvc(routes =>
{
routes.MapRoute(
name: "default",
template: "{controller=Home}/{action=Index}/{id?}");
});
}
原因可能是什么?因此,基本上正如CRice和johnny所评论的,
内部服务器错误
被传播为CORS错误
由于处理应用程序中的所有错误是一种很好的做法,因此这样做将确保500内部服务器错误
即使在出现异常的情况下也不会被掩盖为CORS错误
可以更好地理解这可能会有所帮助
注意:URL不能包含尾随斜杠(/)。如果URL以/结尾,则比较返回false,并且不返回任何头。中的端口是否正确?尝试将端口更改为44332有时当发生500时,ajax调用仍将遇到cors错误。该错误表示请求
text/html
。是否应该是其他内容类型?@CRice是正确的,这可能是因为您在处理cors之前遇到错误,可能是您缺少Dependency injection容器中的注册?@AmanB端口是正确的