2009-05-27 42 views
7

我正在開發使用Twitter API(twitterizer)的Twitter消息傳遞實用程序。但由於我在公司代理中,所以出現錯誤「需要407代理身份驗證」。在調用API或使用默認代理設置之前,有沒有任何方法可以對用戶進行身份驗證?.NET中的代理身份驗證 - 用於外部API

P.S內部API使用HttpWebRequest。

回答

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

非常感謝!我可以使用默認代理設置useDefaultCredentials =「true」 我不知道這個......謝謝! – devnull 2009-05-27 07:09:51

3

一個可能的解決方案是創建以下代理:

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

,然後將其分配給任何進行網絡呼叫並接受代理的對象,例如:

WebClient client = new WebClient();
client.proxy = proxy;