在服务器端的SSRS(SQL Server Reporting Services)中添加以下代码:
app.UseCors(builder =>
builder.WithOrigins("http://localhost:5000")
.AllowAnyHeader()
.AllowAnyMethod()
.AllowCredentials());
上面的代码中 http://localhost:5000
是指定的客户端地址,在此例中指定为 http://localhost:5000
。如果使用不同的地址,则需要将地址的值替换为相应的值。
在应用程序中的 Startup.cs
文件中,添加以下代码段:
public void ConfigureServices(IServiceCollection services)
{
services.AddCors(options =>
{
options.AddPolicy("_myAllowSpecificOrigins",
builder =>
{
builder.WithOrigins("http://localhost:5000")
.AllowAnyHeader()
.AllowAnyMethod()
.AllowCredentials();
});
});
services.AddMvc();
}
上面的代码中 http://localhost:5000
是指定的客户端地址,在此例中指定为 http://localhost:5000
。如果使用不同的地址,则需要将地址的值替换为相应的值。
在需要调用SSRS的地方,添加如下代码段:
using (var client = new HttpClient())
{
client.DefaultRequestHeaders.Add("Access-Control-Allow-Origin", "http://localhost:5000");
HttpResponseMessage response = client.GetAsync(url).Result;
string resultContent = response.Content.ReadAsStringAsync().Result;
return resultContent;
}
上面的代码中 http://localhost:5000
是指定的客户端地址,在此例中指定为 http://localhost:5000
。如果使用不同的地址,则需要将地址的值替换为相应的值。
以上步骤可帮助您解决Blazor应用程序中的CORS被拒绝的SSRS问题。