2016-04-22 59 views
1

爲什麼只有Proxy屬性是不夠的?爲什麼HttpClientHandler同時具有Proxy和UseProxy屬性?

如果是null,則不要使用代理,如果是non-null,則使用提供的代理。

+0

我想一個原因可能是你可以有一個代理定義...但切換啓用/禁用根據需要。另請參閱[IWebProxy](https://msdn.microsoft.com/zh-cn/library/system.net.iwebproxy%28v=vs.110%29.aspx):「GetProxy方法可用於控制代理使用基於目標網址......「。再次說明:您可以定義一個代理,並且對於如何使用或如何使用,仍然具有粒度運行時控制。 – paulsm4

+0

@alex,如何使用IE的默認代理? – Eser

回答

1

Proxy property允許您指定一個代理以供HttpClientHandler使用。

UseProxy屬性允許指示處理程序是否使用代理進行請求。

但是如果你想使用默認代理,你不必在Proxy屬性中定義它,用set就足夠了。

UseProxytrueProxynull,所述WebRequest.DefaultWebProxy被使用。

DefaultWebProxy屬性從配置文件讀取代理設置。如果沒有人,則使用當前用戶的Internet Explorer(IE)代理設置。

+0

我想知道爲什麼Proxy默認情況下沒有WebRequest.DefaultWebProxy的值,以便您可以將其設置爲null或用不同代理替換 – alex

+0

@alex:可能是設計問題,如果我不想使用代理,更有意義不要做任何事情,而不是將代理設置爲空,並且可能更容易設置代理一次,並使用UseProxy激活/取消激活,而不是將代理的引用設置爲屬性。 –

相關問題