Javascript Cors问题API不在同一服务器上

Javascript Cors问题API不在同一服务器上,javascript,angularjs,asp.net-web-api,cors,Javascript,Angularjs,Asp.net Web Api,Cors,我正在使用WebAPI2。在我的WebApiConfig中,我有这个 private static void EnableCrossSiteRequests(HttpConfiguration config) { var origin = WebConfigurationManager.AppSettings["origin"]; var cors = new EnableCorsAttribute( origins: "*

我正在使用WebAPI2。在我的WebApiConfig中,我有这个

   private static void EnableCrossSiteRequests(HttpConfiguration config)
    {
        var origin = WebConfigurationManager.AppSettings["origin"];
        var cors = new EnableCorsAttribute(

            origins: "*",
            headers: "*",
            methods: "*");
        config.EnableCors(cors);
    }
寄存器方法

        public static void Register(HttpConfiguration config)
    {

        config.MapHttpAttributeRoutes();
        config.Formatters.JsonFormatter.SerializerSettings.ContractResolver = new CamelCasePropertyNamesContractResolver();

        EnableCrossSiteRequests(config);

        config.Routes.MapHttpRoute(
            name: "DefaultApi",
            routeTemplate: "api/{controller}/{id}",
            defaults: new { id = RouteParameter.Optional }
        );
        config.Filters.Add(new ErrorHandler());
    }
从我的理解来看,这不是我所需要的一切吗?当它们一起托管时,它在我的开发计算机上工作。但是现在一个在web服务器上,API在另一个web服务器上

我越来越——原点。。。在访问控制允许源标题中找不到。

我已将其设置为允许所有原点。我已经尝试将其添加到web配置中,以及其他围绕堆栈溢出发布的方法。我不明白为什么会被拒绝

前端是有角度的,使用Ngresource进行请求

如果我使用ChromeDevTools中的Network选项卡,对请求的响应是200 OK,之后不会发生任何其他事情。我一整天都在寻找解决办法,到目前为止,我所尝试的都没有奏效

多谢各位

从我的理解来看,这不是我所需要的一切吗

没有。您应该使用
[EnableCors]
属性装饰要跨域调用的Web API控制器/操作:

[EnableCors(origins: "http://mywebclient.azurewebsites.net", headers: "*", methods: "*")]
public class MyController: ApiController
{
    ...
}

这里有一个关于这个主题的示例。

我在WebAiiConfig文件的Register方法中启用了它。这将使它在全球范围内发挥作用。我在很多地方读到,这是你如何在全球范围内启用Cors的。我编辑了我的原始帖子来展示它。是的,我看到了你的帖子。现在尝试将我的答案中所示的属性添加到控制器。不要相信你所读到的一切:-)可以做[EnableCors]它需要参数,是的,你是对的。您需要指定参数。我已使用文档中的示例更新了我的答案。尝试了此操作,[EnableCors(来源:“”,标题:“”,方法:“*”)(astrisks允许所有)得到相同的错误:(在此处查找更多详细信息。。。