通过 Web 代理与 WCF 服务通信;从 Windows 服务中

本文关键字:服务 Windows 通信 通过 代理 WCF Web | 更新日期: 2023-09-27 18:34:16

我正在尝试在多台PC上的Windows服务与我的Web服务器(不同的网络)上托管的WCF服务之间进行通信。

当客户端和服务器之间没有代理时,通信工作正常。

但是,当客户端和服务器之间存在代理时,我无法弄清楚如何对其进行身份验证。

在旧的.asmx时代,我做了这样的事情:

myService.Proxy = new WebProxy("internal.proxyserver.com", 8080)
{
    Credentials = new NetworkCredential("myusername", "mypassword" , "mydomain");
};

我在 WCF 中找不到等效的方法来执行此操作。

我尝试更改WebRequest对象的DefaultWebProxy,并以这种方式分配凭据,但这似乎不起作用,并且我无法连接到Web服务。

ASMX使这变得非常容易;有人可以解释WCF中的正确过程吗?

编辑:提及这是在Windows服务中的相关性是,客户端在没有用户提供凭据的情况下运行,它们需要硬编码/配置到应用程序中。

通过 Web 代理与 WCF 服务通信;从 Windows 服务中

以下链接应该可以帮助您解决问题:

[WCF]如何在 WCF 客户端中为 Web 代理身份验证提供专用凭据

如何在 WCF 中使用 HTTP 代理身份验证

WCF 服务的代理服务器身份验证