gpt4 book ai didi

c# - 即使允许几乎所有内容,ASP.NET 5/Core/vNext CORS也无法正常工作

转载 作者:行者123 更新时间:2023-12-04 00:02:59 24 4
gpt4 key购买 nike

我有一个ASP.NET 5 Web API(无论如何,现在还是MVC)后端,我正在JS应用程序中的axios库中使用它。

我在MVC中的CORS配置如下:

public void ConfigureServices(IServiceCollection services)
{
services.AddMvc();
services.AddCors();
}


public void Configure(IApplicationBuilder app, IHostingEnvironment env, ILoggerFactory loggerFactory)
{
app.UseCors(builder => {
builder.AllowAnyOrigin().AllowAnyMethod().AllowAnyHeader();
});
}

换句话说,我应该允许所有可能的请求。但是,尽管此固定的预检请求已被拒绝,但POST请求仍然被拒绝(我可以看到它在服务器上执行,但是响应中没有标题,因此会导致客户端错误)。

有谁知道为什么这行不通?

这些是MVC API返回的 header :
  • 对于OPTIONS飞行前检查(这一步通过了):
    OPTIONS response
  • 对于实际的POST请求(此请求未通过):
    POST response
  • 最佳答案

    您必须在MVC之前添加Cors。中间件的注册顺序很重要。如果Cors在mvc之后注册,则永远不会调用它。它们按照注册顺序进行调用。

    一旦cors处理了请求,它将把它传递给下一个中间件(Mvc)

    关于c# - 即使允许几乎所有内容,ASP.NET 5/Core/vNext CORS也无法正常工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37138196/

    24 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com