gpt4 book ai didi

c# - HttpWebRequest: The request was aborted: 请求被取消

转载 作者:IT王子 更新时间:2023-10-29 04:30:09 29 4
gpt4 key购买 nike

我一直致力于开发某种中间人应用程序,该应用程序使用针对一系列日期(通常一次 7 个)的 HTTP post 请求将文本上传到 CMS 后端。我正在使用 HttpWebRequest 来完成此操作。第一次约会似乎工作正常,但当它开始第二次约会时,我得到 System.Net.WebException: The request was aborted: The request was canceled.

我四处寻找,发现了以下重要线索:

http://social.msdn.microsoft.com/Forums/en-US/netfxnetcom/thread/0d0afe40-c62a-4089-9d8b-fb4d206434dc

http://www.jaxidian.org/update/2007/05/05/8

http://arnosoftwaredev.blogspot.com/2006/09/net-20-httpwebrequestkeepalive-and.html

而且他们并没有提供太多帮助。我试过重载 GetWebReuqest 但这没有意义,因为我没有使用该函数。

这是我的代码: http://pastebin.org/115268

至少成功运行一次后,我在第 245 行收到错误。

如果我能得到任何帮助,我将不胜感激,因为这是我从事了一段时间的项目的最后一步。这是我的第一个 C#/VS 项目,所以我愿意接受任何提示,但我想专注于首先解决这个问题。

谢谢!

最佳答案

Internet 上列出的常见解决方案似乎是将 HttpWebRequest 的 KeepAlive 属性设置为 false。如果根本原因是连接预计会被重用,即使它实际上在一段时间后自动关闭,这也可以解决问题。但是,不断打开和关闭连接会影响性能。

我在遇到此问题时使用的另一种可能的解决方案是扩展超时属性:WebRequest.ReadWriteTimeout、WebRequest.Timeout、RequestStream.WriteTimeout 和 RequestStream.ReadTimeout。请注意这些以毫秒为单位,因此您可能希望超时为 1000 * 60 * 10 以表示 10 分钟(如果您认为您会知道这意味着什么,则只需 600000 ...)。您可以通过减小文件大小来测试这是否更可能导致问题。

顺便说一句。您的代码已不在列出的网站上。如果问题仍然存在,您可能希望将其包含在帖子的正文中。

关于c# - HttpWebRequest: The request was aborted: 请求被取消,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2459241/

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