在开发期间允许CORS,在生产中重新使用CORS

时间:2014-10-16 20:26:39

标签: asp.net asp.net-web-api cors

我们正在对ASP.NET WebApi 2.2进行跨站点请求。我们在WebApiConfig内启用了CORS:

public static class WebApiConfig
{
    public static void Register(HttpConfiguration config)
    {
        // Web API configuration and services
        var cors = new EnableCorsAttribute("http://www.mydomain.ca", "*", "*");
        config.EnableCors(cors);
    }
}

这在LIVE网站上运行良好。在开发过程中,我们需要更宽松的CORS设置,因为我们在多个开发环境中托管IIS中的WebService和WebClient。即我们在LIVE上需要new EnableCorsAttribute("*", "*", "*");开发盒和受限制的原点。

我们如何在开发和实时环境中自动从允许转换为限制性CORS?

1 个答案:

答案 0 :(得分:0)

我们当前使用内置DEBUG常量和preprocessor directives的方法。只要我们在Debug配置中运行WebApi项目,我们就拥有宽松的CORS设置。

定义调试:

  1. 项目>特性
  2. 构建
  3. 配置:调试
  4. 一般>定义DEBUG常量。
  5. 然后使用预处理程序指令:

    #if DEBUG
            var cors = new EnableCorsAttribute("*", "*", "*");
    #else
            var cors = new EnableCorsAttribute("http://www.mydomain.ca","*", "*");
    #endif