【发布时间】:2016-01-06 08:43:04
【问题描述】:
在 OS X 上使用 VS Code。我正在尝试让 CORS 与 1.0.0-beta7 一起使用。我不确定为什么它不起作用。 “不起作用”是指我在我的 javascript 控制台中收到一条消息,上面写着:“XMLHttpRequest 无法加载 {ommitedurl}。请求的资源上不存在 'Access-Control-Allow-Origin' 标头。来源 '@987654321 @' 因此不允许访问。”我尝试使用 AllowAllOrigins 方法并使用 WithOrigins 方法指定一个或多个 url,但均无济于事。如果这很重要,我将作为 Web 应用程序发布到 Azure。我在下面列出了我的大部分代码。有人可以帮帮我吗?
这是我的 dnvm 列表:
dnvm list
Active Version Runtime Arch Location Alias
------ ------- ------- ---- -------- -----
1.0.0-beta7 coreclr x64 ~/.dnx/runtimes
1.0.0-beta5 mono ~/.dnx/runtimes
* 1.0.0-beta7 mono ~/.dnx/runtimes default
1.0.0-beta8 mono ~/.dnx/runtimes
1.0.0-rc1-15798 mono ~/.dnx/runtimes
dnx-mono mono ~/.dnx/runtimes
dnx-mono.1.0.0-beta8 mono ~/.dnx/runtimes
这是我的 project.json 依赖项:
"dependencies": {
"Microsoft.AspNet.Cors": "1.0.0-beta7",
"Microsoft.AspNet.Mvc": "6.0.0-beta7",
"Microsoft.AspNet.Server.IIS": "1.0.0-beta7",
"Microsoft.AspNet.Server.Kestrel": "1.0.0-beta7",
"Microsoft.AspNet.Server.WebListener": "1.0.0-beta7",
"Microsoft.AspNet.WebApi.Client": "5.2.3",
"Microsoft.AspNet.StaticFiles": "1.0.0-beta7",
"Microsoft.Framework.Configuration.Json": "1.0.0-beta7",
"System.Net.Http": "4.0.1-beta-23225",
"Newtonsoft.Json": "7.0.1"
}
这是我的 Startup.cs
public class Startup
{
public void ConfigureServices(IServiceCollection services)
{
services.AddMvc();
services.ConfigureCors(options =>
{
options.AddPolicy("AllowPlnkr",
builder =>
{
builder.WithOrigins("http://run.plnkr.co");
});
});
services.Configure<MvcOptions>(options =>
{
options.Filters.Add(new CorsAuthorizationFilterFactory("AllowPlnkr"));
});
services.AddScoped<ITrackerRepository, TrackerRepository>();
}
public void Configure(IApplicationBuilder app)
{
app.UseMvc();
app.UseCors("AllowPlnkr");
app.UseDefaultFiles();
app.UseStaticFiles();
}
}
我的控制器上也有 EnableCors 属性
[EnableCors("AllowPlnkr")]
[Route("api/[controller]")]
public class TrackerController : Controller
【问题讨论】:
-
尝试移动 app.UseCors("AllowPlnkr");之前 app.UseMvc();
-
描述“不工作”
-
@mason 我已经编辑了我的问题。谢谢
-
@Richard.Davenport 你能不能把你的问题更新为“正确”,而不是把问题回滚到未解决,而是写成答案?
-
谢谢@vcsjones,我做到了。
标签: asp.net cors asp.net-core