![](/img/trans.png)
[英]What is the difference between creating a project ASP.NET Core (.NET Core) and ASP.NET Core (.NET Framework)
[英]Communicating between React and Asp.net core project
当我尝试将我的反应项目连接到我的 asp.net 核心 3 后端时出现此错误
No 'Access-Control-Allow-Origin' header is present on the requested resource
我已经起来了这是我的启动方法ConfigureServices
services.AddCors(options =>
{
options.AddPolicy("AllowOrigin",
builder => builder.AllowAnyOrigin());
});
我也把这也是启动配置方法
app.UseCors("AllowOrigin");
添加这些:
services.AddCors(options =>
{
options.AddPolicy("CorsPolicy",
builder => builder.AllowAnyOrigin()
.AllowAnyMethod()
.AllowAnyHeader()
.AllowCredentials());
});
你所做的看起来不正确。 您使用的 cors 策略和 cors 策略的名称不同。 它必须相同。 应该:
app.UseCors("AllowOrigin");
或者您的 cors 政策名称是什么。
但也允许任何起源都是危险的。 最好用 origin 指定可以访问这个 api。 我举个例子:
readonly string MyAllowSpecificOrigins = "_myAllowSpecificOrigins";
public void ConfigureServices(IServiceCollection services)
{
services.AddCors(options =>
{
options.AddPolicy(name: MyAllowSpecificOrigins,
builder =>
{
builder.WithOrigins("http://example.com",
"http://www.contoso.com");
});
});
// services.AddResponseCaching();
services.AddControllers();
}
然后:
app.UseCors(MyAllowSpecificOrigins);
您可以在这里找到更多信息
两个问题。
曾经是如上所述。 第二个是您必须使用 https 而不是 http。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.