httpWebRequest上传时异常 基础连接已关闭 发送时发生错误

linboc 2009-12-21 09:25:11
C#应用程序端用HttpWebRequest对象以POST方式上传文件时,当文件过大,大概范围是超过130M左右,测试最大通过文件是125M(没有测试更大文件,所以130M的范围是猜测出来的),最小异常文件是134M。只要文件大小超过这个范围在将文件流完全写入到RequestStream中并关闭RequestStream后,调用httpWebRequest.GetResponse()方法时就得到异常“基础连接已关闭:发送时发生错误”

这个异常似乎与物理内存大小无关,在不同硬件环境的XP机器上测试出来大致都是这个范围,这个异常也只有在WINDOWS XP环境下会发生,在WINDOWS 7环境下测试500M以上也是可以正常上传的,求教高手这是什么原因。
...全文
666 15 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
15 条回复
切换为时间正序
请发表友善的回复…
发表回复
ShaoWenJing 2009-12-25
  • 打赏
  • 举报
回复
用SOCKET自己写
linboc 2009-12-25
  • 打赏
  • 举报
回复
再来顶~
linboc 2009-12-23
  • 打赏
  • 举报
回复
自己再顶!
Calm2049 2009-12-21
  • 打赏
  • 举报
回复
xuexi
linboc 2009-12-21
  • 打赏
  • 举报
回复
[Quote=引用 10 楼 ludeli2004 的回复:]
好像与web.config中的相关配置有关系,我以前也遇到过,记忆中是修改了配置中的东东,楼主在网上搜一搜
[/Quote]
这个错误是客户端抛出的,上传请求还没发出就已经错了,这里说的操作系统环境是客户端的操作系统,不是服务器,服务器是2003的
WIN7是可以正常上传的,只有在XP下才会抛出这个异常。
ludeli2004 2009-12-21
  • 打赏
  • 举报
回复
好像与web.config中的相关配置有关系,我以前也遇到过,记忆中是修改了配置中的东东,楼主在网上搜一搜
linboc 2009-12-21
  • 打赏
  • 举报
回复
自己顶起来~~

这世界上解决不了的问题有太多了,拜托大家一起努力,少为我们的子孙制造一个历史遗留问题吧
linboc 2009-12-21
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 huing 的回复:]
baidu、google搜索上传大文件
[/Quote]
baidu、google能解决的问题就不是问题了
zhq_442577358 2009-12-21
  • 打赏
  • 举报
回复
hhghgh
zzxap 2009-12-21
  • 打赏
  • 举报
回复
我遇到过的情况是:没关闭就再连接就会出现这种情况
jeven_xiao 2009-12-21
  • 打赏
  • 举报
回复
这样的问题你只有慢慢的等待了
任何的东西都有局限性
huing 2009-12-21
  • 打赏
  • 举报
回复
baidu、google搜索上传大文件
linboc 2009-12-21
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 zl194 的回复:]
这么大,是不是考虑断点续传。很难保证win的连接永远是稳定的。我觉得即使是win7也有个上限。
[/Quote]
或许WIN7有上限,但能做到500M以上已经达到需求极限了,我做的HTTP大文件上传,服务器端上传组件是自己写的,是支持断点续传,连接稳定性是有保证的,项目需求一般也就100M左右的大文件,这个范围已经通过了压力测试,没有一个失败的,但当客户端在XP环境下时,只要一执行httpWebRequest.GetResponse()方法,无需等待,没有什么超时问题,立刻就抛出了“基础链接已关闭:发送时发生错误”这个异常。根本没有到达服务器端
zl194 2009-12-21
  • 打赏
  • 举报
回复
这么大,是不是考虑断点续传。很难保证win的连接永远是稳定的。我觉得即使是win7也有个上限。
  • 打赏
  • 举报
回复
问盖子哥,我不知道

111,098

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • AIGC Browser
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧