asp.net-web-api – 如何在ASP.NET 5和MVC 6中启用跨源请求(CORS)?

前端之家收集整理的这篇文章主要介绍了asp.net-web-api – 如何在ASP.NET 5和MVC 6中启用跨源请求(CORS)?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我想在使用MVC 6构建的API启用CORS,但所有当前文档引用该框架的早期版本。

解决方法

关于新的Cors功能的注释很轻,但是我能够通过查看新的类和方法在我的解决方案中工作。我的Web API startup.cs看起来像这样。你可以看到如何使用新的CorsPolicy类来构造你的起源和策略。并使用AddCors和UseCors方法启用CORS。
public void ConfigureServices(IServiceCollection services)
 {
     services.AddMvc();
     //Add Cors support to the service
     services.AddCors();

     var policy = new Microsoft.AspNet.Cors.Core.CorsPolicy();

     policy.Headers.Add("*");    
     policy.Methods.Add("*");          
     policy.Origins.Add("*");
     policy.SupportsCredentials = true;

     services.ConfigureCors(x=>x.AddPolicy("mypolicy",policy));

 }


 public void Configure(IApplicationBuilder app,IHostingEnvironment  env)
 {
     // Configure the HTTP request pipeline.

     app.UseStaticFiles();
     //Use the new policy globally
     app.UseCors("mypolicy");
     // Add MVC to the request pipeline.
     app.UseMvc();
 }

您还可以在控制器中引用具有新属性的策略,如此

[EnableCors("mypolicy")]
[Route("api/[controller]")]

猜你在找的asp.Net相关文章