在Owin中启用CORS

时间:2015-04-09 15:32:07

标签: cors owin nancy

我一直在尝试在OWIN上运行的ASP.Net应用程序中启用CORS。

这是我的代码:

public class Startup
{
    public void Configuration(IAppBuilder app)
    {
        //Enable CORS
        //Use JWTOwinAuth middleware
        //Use Nancy framework
        app     
            .UseCors(CorsOptions.AllowAll)                  
            .Use(typeof(JwtOwinAuth))
            .UseNancy();

    }
}

CorsOptions.AllowAll似乎无法正常工作,我得到了" No' Access-Control-Allow-Origin'标头出现在请求的资源上#34;。

我已经尝试过网络上的所有建议,但解决方案仍无效。

2 个答案:

答案 0 :(得分:1)

你需要做两件事

public static class WebApiConfig
{
    public static void Register(HttpConfiguration config)
    {
       var cors = new EnableCorsAttribute("*", "*", "*");
        config.EnableCors(cors);
       ........

和(你已经完成了这个)

    public void ConfigureAuth(IAppBuilder app)
    {
         app.UseCors(CorsOptions.AllowAll);
    ........

答案 1 :(得分:0)

我知道这是旧的,但你可以检查的另一件事是你的web.config用这两个应用程序设置调用owin启动:

<add key="owin:AutomaticAppStartup" value="true" />
<add key="owin:AppStartup" value="MyCompany.MyProduct.MyProject.Startup, MyCompany.MyProduct.MyProject" />