【问题标题】:WCF HTTPS and HTTP bindings with single web.configWCF HTTPS 和 HTTP 绑定与单个 web.config
【发布时间】:2009-12-22 23:20:21
【问题描述】:

有什么办法可以做到以下几点:

.net Web 应用程序的单个 Web.config 文件。 Web 应用程序公开了许多 WCF 服务供 javascript 使用。

生产需要 ssl,因此所有这些服务都强制使用 ssl。

开发不允许ssl,(ASP.NET开发服务器)

我该如何配置它,以便生产使用 HTTPS 端点,而开发将使用 HTTP 端点来提供相同的服务?

将两个端点添加到同一个服务不起作用,因为当它尝试连接到 HTTP 端点时会抛出错误,因为 asp.net 开发服务器不支持 https 端点。

【问题讨论】:

    标签: c# wcf endpoints


    【解决方案1】:

    我通过使用 ServiceHostFactory 为我生成适当的绑定解决了这个问题。

    一开始有点尴尬,控制较少,但最终效果更好。

    这是关键的行,我把它放在我的 .svc 文件中:

    Factory="System.ServiceModel.Activation.WebScriptServiceHostFactory"

    【讨论】:

      【解决方案2】:

      我不确定这是否是解决您的问题的最佳方法,但这样做的一种方法是在配置文件中声明一个变量来指示它在什么环境中运行(开发或生产)。如果您配置两个端点,您可以在托管代码中说,

      如果 environment=="dev",则在端点 A 上托管服务。

      如果 environment=="eval",则在端点 B 上托管服务。

      【讨论】:

        猜你喜欢
        • 2015-09-15
        • 1970-01-01
        • 2011-03-09
        • 1970-01-01
        • 2015-10-15
        • 2012-11-16
        • 2011-09-05
        • 1970-01-01
        • 2011-04-02
        相关资源
        最近更新 更多