.NET中的代理身份验证 - 用于外部API

时间:2009-05-27 06:46:12

标签: c# twitter proxy-server

我正在使用Twitter API(twitterizer)开发一个Twitter消息传递实用程序。但由于我在公司代理中,我收到错误'407 Proxy Authentication Required'。在调用API或使用默认代理设置之前,有没有办法对用户进行身份验证?

P.S在内部,API使用HttpWebRequest。

2 个答案:

答案 0 :(得分:9)

这不能回答你的问题。但是你得到的错误显然是代理身份验证错误。

您可能想要禁用或启用代理。

要禁用代理,请在App.config文件中添加以下配置

<system.net>
  <defaultProxy enabled="false" useDefaultCredentials="false">
    <proxy/>
    <bypasslist/>
    <module/>
  </defaultProxy>
</system.net>

要启用代理并使用默认代理设置(在IE中指定),请在App.config中添加此配置

<system.net>
  <defaultProxy enabled="true" useDefaultCredentials="true">
    <proxy/>
    <bypasslist/>
    <module/>
  </defaultProxy>
</system.net>

答案 1 :(得分:3)

可能的编程解决方案之一是创建以下代理:

IWebProxy proxy=HttpWebRequest.GetSystemWebProxy();  
proxy.Credentials = CredentialCache.DefaultCredentials;  

然后将其分配给进行网络调用并接受代理的任何对象,例如:

WebClient客户端=新WebClient();
  client.proxy = proxy;