gpt4 book ai didi

c# - WebClient多线程响应

转载 作者:太空宇宙 更新时间:2023-11-03 11:54:39 24 4
gpt4 key购买 nike

我正在使用 WebClient 对我的 Web 服务执行两个并行请求,并使用 ThreadPool 对它们进行多线程处理。但是,我在获得此 WebException 的其中一个线程中遇到问题:

The server committed a protocol violation. Section=ResponseStatusLine

我做了一些研究,发现这可能是一个不安全的 header 验证问题,但请求在单线程模式下工作正常。

所以为了澄清起见,我将启动两个线程。一种是对 URI 执行 GET,另一种是将一些数据发送到 URI。第一个 GET 工作正常,但 POST 失败并出现上面的 WebException。

有什么想法吗?谢谢。

最佳答案

我通过添加解决了我的问题

request.ServicePoint.Expect100Continue = false;

在进行 POST 调用之前。根据 wireshark 发生的事情是我的 HttpWebRequest 期待 100 继续,但得到 401 未授权,但它在服务器响应后发送数据,而不是发送授权 header 。并非每次都发生这种情况,但这似乎可以解决问题。

关于c# - WebClient多线程响应,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/936021/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com