在IIS 10中发布我的项目后出现Cors错误



在IIS中发布我的项目后,我遇到了cors严格的原始错误,但我已经配置了我所能配置的一切。

以下是我的配置

我正在使用Netcore 6.0

private static void ConfigureServices(WebApplicationBuilder builder)
{
// Add services to the container.
builder.Services.AddControllers();
builder.Services.AddEndpointsApiExplorer();
builder.Services.AddSwaggerGen();
ConfigureService.ConfigureDependenciesService(builder);
ConfigureService.ConfigureControllerService(builder);
ConfigureRepository.ConfigureDependenciesRepository(builder);
ConfigureAuthService.ConfigureJWT(builder);
ConfigureCultureService.ConfigureCulture(builder);
ConfigureEmailService.ConfigureSmtpClient(builder);
builder.Services.AddCors(opt =>
{
opt.AddPolicy("CorsPolicy", builder => builder
.AllowAnyOrigin()
.AllowAnyMethod()
.AllowAnyHeader());
});
}
private static void Configure(WebApplication app)
{
// Configure the HTTP request pipeline.
if (app.Environment.IsDevelopment())
{
app.UseSwagger();
app.UseSwaggerUI();
}
app.UseAuthentication();
var localizeOptions = app.Services.GetService<IOptions<RequestLocalizationOptions>>();
app.UseRequestLocalization(localizeOptions.Value);
//app.UseHttpsRedirection();
app.UseCors("CorsPolicy");
app.UseAuthentication();
app.UseRouting();
app.UseAuthorization();
app.UseEndpoints(endpoints =>
{
endpoints.MapControllers();
});
}

配置web.Config IIS文件夹

请检查您是否在iis中启用了cors,如果没有,您可以通过在web.config文件中添加配置来启用cors,以下是配置:

<system.webServer>
<httpProtocol>
<customHeaders>
<add name="Access-Control-Allow-Origin" value="*" />
<add name="Access-Control-Allow-Methods" value="GET,POST,OPTIONS" />
<add name="Access-Control-Allow-Headers" value="Content-Type" />
</customHeaders>
</httpProtocol>
</system.webServer>

最新更新