HttpClient.DefaultProxy 属性
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
获取或设置全局 HTTP 代理。
public:
static property System::Net::IWebProxy ^ DefaultProxy { System::Net::IWebProxy ^ get(); void set(System::Net::IWebProxy ^ value); };
public static System.Net.IWebProxy DefaultProxy { get; set; }
static member DefaultProxy : System.Net.IWebProxy with get, set
Public Shared Property DefaultProxy As IWebProxy
属性值
每个 HTTP 请求使用的代理。
例外
传递的值不能为 null
。
注解
如果通过其构造函数传递的 中HttpMessageHandler未显式设置代理,则此静态属性确定所有HttpClient实例使用的默认代理。
此属性返回的默认实例将基于平台按照一组不同的规则进行初始化:
对于 Windows:从环境变量读取代理配置,或者,如果未定义这些变量,则从用户的代理设置中进行读取。
对于 macOS:从环境变量读取代理配置,或者,如果未定义这些变量,则从系统的代理设置中进行读取。
对于 Linux:从环境变量读取代理配置,或者,如果未定义这些变量,则此属性将初始化绕过所有地址的非配置实例。
基于 Windows 和 Unix 的平台上用于 DefaultProxy
初始化的环境变量是:
- HTTP_PROXY:用于 HTTP 请求的代理服务器。
- HTTPS_PROXY:用于 HTTPS 请求的代理服务器。
- ALL_PROXY:如果未定义HTTP_PROXY和/或HTTPS_PROXY,则用于 HTTP 和/或 HTTPS 请求的代理服务器。
- NO_PROXY:应从代理中排除的主机名的逗号分隔列表。 通配符不支持星号;如果要匹配子域,请使用前导点。 示例:
NO_PROXY=.example.com
(带前导点)将与www.example.com
匹配,但与example.com
不匹配。NO_PROXY=example.com
(不带前导点)与www.example.com
不匹配。 将来可能会重新访问此行为,以更好地匹配其他生态系统。
在环境变量区分大小写的系统上,变量名称可能全部小写或全部大写。 首先检查小写名称。
代理服务器可以是主机名或 IP 地址,后跟冒号和端口号(可选),也可以是 http URL,(可选)包括用于代理身份验证的用户名和密码。 URL 必须以 http
(而不是 https
)开头,不能在主机名、IP 或端口之后包含任何文本。