【发布时间】:2018-02-01 23:12:39
【问题描述】:
我需要通过localhost:9000访问localhost:5002/api/login。
我已经尝试了几乎所有在线可用的解决方案。 但我不断收到以下错误。
如何在请求的资源上显示“Access-Control-Allow-Origin”。
XMLHttpRequest 无法加载 localhost:5002/api/login。请求的资源上不存在“Access-Control-Allow-Origin”标头。 Origin 'localhost:9000' 因此不允许访问。
我已尝试将此添加到 Web.config
<httpProtocol> <customHeaders> <clear /> <add name="Access-Control-Allow-Origin" value="*" /> </customHeaders> </httpProtocol>
并且在服务器端 StartUp.cs 文件中我还添加了以下内容
public void ConfigureServices(IServiceCollection 服务)
{
services.AddCors(options =>
{
options.AddPolicy("CorsPolicy",
builder => builder.AllowAnyOrigin()
.AllowAnyMethod()
.AllowAnyHeader()
.AllowCredentials());
});
services.AddMvc();
}
public void Configure(IApplicationBuilder app, IHostingEnvironment env, ILoggerFactory loggerFactory, IUowProvider uowProvider)
{
app.UseCors("CorsPolicy");
app.UseMvc();
}
【问题讨论】:
-
这是 Web API 2 吗?
-
如果您简要列举您尝试过的内容会很有帮助。
-
它不是 Web API 2。我们使用的是 MVC 控制器。
标签: asp.net-mvc