我正在尝试在多台 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 服务中的相关性是客户端在没有用户提供凭据的情况下运行,它们需要被硬编码/配置归档到应用程序中。