Asp.net Azure API-如何设置CORS
我有RESTAPI,它托管在Azure中。若我在交互式控制台中使用GET方法('/api/pets')发出请求,那个么请求将顺利通过。但当我发出POST请求(POST'/api/pets')时,会出现CORS错误 交互控制台中的响应引发此错误: startup.csAsp.net Azure API-如何设置CORS,asp.net,.net,azure,asp.net-core,.net-core,Asp.net,.net,Azure,Asp.net Core,.net Core,我有RESTAPI,它托管在Azure中。若我在交互式控制台中使用GET方法('/api/pets')发出请求,那个么请求将顺利通过。但当我发出POST请求(POST'/api/pets')时,会出现CORS错误 交互控制台中的响应引发此错误: startup.cs public void配置服务(IServiceCollection服务) { . . . services.AddCors(options=>options.AddPolicy(“CorsPolicy”), 生成器=> { 建设
public void配置服务(IServiceCollection服务)
{
.
.
.
services.AddCors(options=>options.AddPolicy(“CorsPolicy”),
生成器=>
{
建设者
.AllowAnyOrigin()
.AllowAnyHeader()
.AllowAnyMethod();
}));
.
.
.
}
public void配置(IApplicationBuilder应用程序、IWebHostEnvironment环境)
{
附录UseCors(“公司政策”);
.
.
.
}
所有API的CORS政策
*
得到
邮递
放
删除
头
选择权
补丁
痕迹
*
*
我还尝试只在特定的API中在azure portal上设置CORS策略,但它不起作用
本地一切正常。您可以使用门户网站试试吗
<cors>
<allowed-origins>
<origin>*</origin>
</allowed-origins>
<allowed-methods>
<method>*</method>
</allowed-methods>
<allowed-headers>
<header>*</header>
</allowed-headers>
<expose-headers>
<header>*</header>
</expose-headers>
</cors>
*
*
*
*
几年前,我尝试在API管理策略中加入一些规则,以将这些标题添加到响应中:
...
...
@(context.Request.Headers.GetValueOrDefault(“Origin”、“”)
真的
...
我已经试过了,但不起作用。它设置了问题中所示的策略。更新的答案如上所述