当前位置:  开发笔记 > 运维 > 正文

WCF自定义Http代理身份验证

如何解决《WCF自定义Http代理身份验证》经验,为你挑选了1个好方法。

是否可以为WCF提供自定义代理地址和自定义凭据?

我在stackoverflow上找到了这个答案:如何使用凭据设置代理来生成WCF客户端?,但我有一个复杂的问题,我正在验证的服务使用自己的身份验证,所以我必须使用两组凭据(一个用于通过代理,另一个用于对服务进行身份验证)

我正在使用其他问题的答案中描述的技术来提供服务凭据.例如

client.ClientCredentials.UserName.UserName = username;
client.ClientCredentials.UserName.Password = password;

我可以使用以下内容设置代理的地址:

(client.Endpoint.Binding as WSHttpBinding).ProxyAddress = ...;

如何设置有效的两组凭据?(注意:代理和实际服务的凭据不同!)另请注意,代理详细信息不一定是默认的系统代理详细信息.



1> Bradley Grai..:

如果将WebRequest.DefaultWebProxy属性设置为具有凭据的新WebProxy,则WCF将其用于它所做的所有HTTP请求.(除非明确覆盖,否则这将影响应用程序使用的所有HttpWebRequests).

// get this information from the user / config file / etc.
Uri proxyAddress;
string userName;
string password;

// set this before any web requests or WCF calls
WebRequest.DefaultWebProxy = new WebProxy(proxyAddress)
{
    Credentials = new NetworkCredential(userName, password),
};

我在代理服务器上的博客文章包含更多细节.

推荐阅读
wurtjq
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有