在Web API 2 / Token端点上启用CORS

时间:2019-01-09 23:14:15

标签: cors asp.net-web-api2

这里有点CORS问题。您可能知道一个...

  

从源访问“ http://localhost:59365/Token”处的XMLHttpRequest   “ http://localhost:4200”已被CORS政策屏蔽:对   飞行前请求未通过访问控制检查:它没有   HTTP正常状态。

原来,我需要在Web API项目上启用CORS,因此我运行了Install-Package Microsoft.AspNet.WebApi.Cors并将config.EnableCors()添加到WebApiConfig.cs

这无济于事,因为有问题的/Token端点已内置到OAuth中,因此我无法触摸该代码以添加显然对使这项工作:

[EnableCors]

所以我得到的最后一个想法(因为现在是凌晨1点,我现在不打算尝试,我明天必须工作)是将登录名转移到一个控制器上,我可以对其进行操作并将其用作一种排序方式我的应用程序和/ Token之间的“中间人”,尽管我不知道这个中间人的代码是什么样子...

我认为有一个更有效的方法可以解决这个我不知道的问题,希望您比我更聪明,可以分享一下。

最重要的是,如果我无法发布到/ Token,则无法向服务验证我的应用程序,并且这两种软件都没有用。我不明白为什么会这样,或者我应该如何解决这个问题...

1 个答案:

答案 0 :(得分:0)

从WebApiConfig文件中删除所有基于CORS的代码,并将以下代码添加到App_Start文件夹中的启动文件中

   public void ConfigureAuth(IAppBuilder app)
    {
        app.UseCors(Microsoft.Owin.Cors.CorsOptions.AllowAll);
    }