使用 HttpWebRequest
进行基本身份验证有时会导致“发送时出现意外错误”消息。 此问题通常可以通过手动将授权标头添加到您的请求中来解决。
该解决方案涉及将您的用户名和密码编码为 Base64 字符串,确保跨各种 HTTP 服务器的兼容性。 System.Convert.ToBase64String
方法与 ISO-8859-1
编码相结合,实现了这一点:
<code class="language-csharp">string username = "abc"; string password = "123"; string encoded = Convert.ToBase64String(Encoding.GetEncoding("ISO-8859-1").GetBytes(username + ":" + password));</code>
接下来,将此编码字符串附加到“Basic”身份验证方案中,并将其作为“Authorization”标头添加到您的 HttpWebRequest
对象中:
<code class="language-csharp">httpWebRequest.Headers.Add("Authorization", "Basic " + encoded);</code>
使用指定编码的手动标头添加可确保与需要基本身份验证的服务器进行正确通信,从而防止请求过程中出现“发送时出现意外错误”。
以上是将基本身份验证与 HttpWebRequest 结合使用时如何修复'发送时出现意外错误”?的详细内容。更多信息请关注PHP中文网其他相关文章!