升级到 .NET 7 到 .NET 8 后,我收到以下错误
services.AddCors(options =>
{
options.AddPolicy(name: "apiCorsPolicy",
builder =>
{
builder.SetIsOriginAllowed(origin => true);
builder.AllowAnyHeader().WithExposedHeaders("Content-Disposition");
builder.AllowAnyMethod();
builder.AllowCredentials();
});
});
错误:
从源“https://cp.in”访问“https://test.cp.in/api/Auth/authenticate”处的 XMLHttpRequest 已被 CORS 策略阻止:对预检请求的响应未通过访问控制检查:请求的资源上不存在“Access-Control-Allow-Origin”标头。
.NET 8 中需要进行任何更改吗?请让我托管在linux共享中 服务器
尝试编辑 CORS 策略以包含指定允许来源的“
WithOrigins
”方法。按如下方式修改您的 CORS 策略设置:
services.AddCors(options =>
{
options.AddPolicy("apiCorsPolicy",
builder =>
{
builder.WithOrigins("https://cp.in")
.AllowAnyHeader()
.WithExposedHeaders("Content-Disposition")
.AllowAnyMethod()
.AllowCredentials();
});
});
通过这种方式,CORS 策略将在响应中包含必要的“Access-Control-Allow-Origin”标头。