WinHttpRequest 的代理凭据目标标志
在 WinHttpRequest 中使用代理凭据目标,而不是套用服务器凭据并掩盖一个无关的 TLS 错误。
SetCredentials 接受一个目标标志。在诊断代理质询时传入服务器标志,配置的是另一种身份验证关系。
对于 WinHttpRequest 自动化对象,代理目标是 HTTPREQUEST_SETCREDENTIALS_FOR_PROXY,其值为 1。紧凑片段如下:
Const ProxyCredentials = 1
request.Open "GET", "https://example.com/", False
request.SetCredentials proxyUser, proxyPassword, ProxyCredentials
request.Send
这假定已选择预期的代理,且账户值来自应用程序的正常配置。凭据在 Open 成功之后设置。如果目标端也需要凭据,那是另一个目标和另一次赋值。
应读取最终状态和身份验证方法,而不是把赋值成功当作登录成功。代理可能拒绝不支持的方案或没有权限的账户。
旧配方还可能禁用 SSL 错误检查。这不能修复分配给错误目标的凭据。保持正常的证书验证,并在其各自的连接上诊断任何后续的 TLS 错误。