【发布时间】:2021-02-09 20:16:07
【问题描述】:
我正在尝试在 Web API 应用程序中启用 CORS 支持。在我的WebApiConfig.cs 文件中,我有以下代码:
var cors = new EnableCorsAttribute(origins: "http://localhost:19509",
headers: "*",
methods: "*");
config.EnableCors(cors);
但是,这不起作用。我已经尝试了以下链接中的每个建议,但它们也不起作用:
- Asp.net web API CORS series/mysterious issue
- MVC web api: No 'Access-Control-Allow-Origin' header is present on the requested resource
我创建了一个没有授权/身份验证/安全实施的空项目,并尝试从我的前端点击这个空项目,并且成功了。基于此,我相信前端实现是好的。
是否有可能导致此问题的特定软件包,或者我需要更改的其他任何内容?
当我尝试使用禁用 cors 的 Chrome 浏览器时它会运行。
//在StartUp.cs文件中实现CORS后更新问题。
我也尝试在 StartUp.cs 文件中应用 cors,但没有运气。下面是我在 StartUp.cs 文件中的代码。
using Microsoft.Extensions.DependencyInjection;
using Microsoft.Extensions.DependencyInjection.Abstractions;
using Microsoft.Owin;
using Owin;
using System.Web.Services;
using Microsoft.Extensions.DependencyInjection.Extensions;
using Microsoft.AspNetCore.Cors;
namespace xyz
{
public partial class Startup
{
public void Configuration(IAppBuilder app)
{
ConfigureAuth(app);
}
}
}
【问题讨论】:
-
查看我的更新答案。基本上,如果它在浏览器中关闭 cors 时工作,则意味着服务器正在添加 Cors 标头,您只是从未列出的域发出请求。例如,您没有将 https 列入白名单。或者您正尝试从完全不同的域发出请求。