在 ASP.Net 5 / Core 中启用 cross-origin 资源共享 (CORS)
Enable cross-origin resource sharing (CORS) in ASP.Net 5 / Core
如何将 CORS headers 添加到我的 MVC6 应用程序?我对全局和每次操作感兴趣。
好像ASP.Net vNext/5/Core发生了一些变化所以这个问题对于不同的版本有不同的答案。我正在使用 RC1。
我试过这个 SO“”,但是到了 var policy = new Microsoft.AspNet.Cors.Core.CorsPolicy();
"Core" 命名空间不存在。
尝试了“”中的答案,但 method/extension 方法services.ConfigureCors
不存在。
最后的 SO 答案与 this blog post 相同,也表示首先安装 Microsoft.AspNet.Cors (Install-Package Microsoft.AspNet.Cors
)。但是这样做会使事情变得更糟,然后 services.AddCors()
由于某种原因不存在。
"" 说要安装不存在的 "Microsoft.AspNet.Cors.Core",以及没有帮助的 using Microsoft.AspNet.Builder;
。
您需要添加预发布版本:
Install-Package Microsoft.AspNet.Cors -PreRelease
在 Startup.cs 的 ConfigureServices 下添加以下内容:
services.AddCors(options =>
{
options.AddPolicy("AllowFromAll",
builder => builder
.WithMethods("GET", "POST")
.AllowAnyOrigin()
.AllowAnyHeader());
});
如果你想全局添加它,把它放在configure下:
app.UseCors("AllowFromAll");
如果你想要 controller/action,你可以用以下装饰它们:
[EnableCors("AllowFromAll")]
文档中关于cors的信息比较多,供大家参考:
http://docs.asp.net/en/latest/security/cors.html
在 ASP.NET Core 1.0 版本中,我必须将以下内容添加到 Startup.cs 中的 ConfigureServices 中,以使全局 CORS 配置在没有属性的情况下在全局范围内工作:
services.AddMvc(options =>
{
options.Filters.Add(new CorsAuthorizationFilterFactory("AllowFromAll"));
});
services.AddCors(options =>
{
options.AddPolicy("AllowFromAll", builder => builder
.WithMethods("GET", "POST")
.AllowAnyOrigin()
.AllowAnyHeader());
});
如何将 CORS headers 添加到我的 MVC6 应用程序?我对全局和每次操作感兴趣。
好像ASP.Net vNext/5/Core发生了一些变化所以这个问题对于不同的版本有不同的答案。我正在使用 RC1。
我试过这个 SO“var policy = new Microsoft.AspNet.Cors.Core.CorsPolicy();
"Core" 命名空间不存在。
尝试了“services.ConfigureCors
不存在。
最后的 SO 答案与 this blog post 相同,也表示首先安装 Microsoft.AspNet.Cors (Install-Package Microsoft.AspNet.Cors
)。但是这样做会使事情变得更糟,然后 services.AddCors()
由于某种原因不存在。
"using Microsoft.AspNet.Builder;
。
您需要添加预发布版本:
Install-Package Microsoft.AspNet.Cors -PreRelease
在 Startup.cs 的 ConfigureServices 下添加以下内容:
services.AddCors(options =>
{
options.AddPolicy("AllowFromAll",
builder => builder
.WithMethods("GET", "POST")
.AllowAnyOrigin()
.AllowAnyHeader());
});
如果你想全局添加它,把它放在configure下:
app.UseCors("AllowFromAll");
如果你想要 controller/action,你可以用以下装饰它们:
[EnableCors("AllowFromAll")]
文档中关于cors的信息比较多,供大家参考:
http://docs.asp.net/en/latest/security/cors.html
在 ASP.NET Core 1.0 版本中,我必须将以下内容添加到 Startup.cs 中的 ConfigureServices 中,以使全局 CORS 配置在没有属性的情况下在全局范围内工作:
services.AddMvc(options =>
{
options.Filters.Add(new CorsAuthorizationFilterFactory("AllowFromAll"));
});
services.AddCors(options =>
{
options.AddPolicy("AllowFromAll", builder => builder
.WithMethods("GET", "POST")
.AllowAnyOrigin()
.AllowAnyHeader());
});