httpWebRequest.GetResponse() 基础连接已关闭 发送时发生错误

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了httpWebRequest.GetResponse() 基础连接已关闭 发送时发生错误相关的知识,希望对你有一定的参考价值。

C#应用程序端用HttpWebRequest对象以POST方式上传文件时,当文件过大,大概范围是超过130M左右,测试最大通过文件是123M(没有测试更大文件,所以130M的范围是猜测出来的),最小异常文件是134M。只要文件大小超过这个范围在将文件流完全写入到RequestStream中并关闭RequestStream后,调用httpWebRequest.GetResponse()方法时就得到异常“基础连接已关闭:发送时发生错误”这个异常似乎与物理内存大小无关,在不同硬件环境的XP机器上测试出来大致都是这个范围,这个异常也只有在WINDOWS XP环境下会发生,在WINDOWS 7环境下测试500M以上也是可以正常上传的,求教高手这是什么原因。

这个不是超时问题,在XP下只要超过125M以上一提交接就报错,WIN7下只要服务器支持超时时间范围内,就算1G的文件传一天也不会超时,因为.NET框架底层的WebRequest是用IE的wininet.dll来进行网络请求的,所以跟不同系统环境下的IE内核有关,要解决此问题只有一个办法,就是自己用SOCKET来进行HTTP请求 参考技术A 哥们·你的上传速度是多少?你的传输一般的速度?HttpWebRequest 有一个默认断开连接的时间(不知道记得对不对),就像你打开一个网站,很久没有反应IE就会告诉你无法打开连接一个道理,我记得默认这个默认时间不是很长·以前在一个项目中测试过·不会超过2分钟吧·不晓得你遇到的哈·也许你在局域网的测试和广域网的测试是非常大的差距·给分吧·

a!! 是啥意思?在 JavaScript 中是啥意思? [复制]

【中文标题】a!! 是啥意思?在 JavaScript 中是啥意思? [复制]【英文标题】:What does a !! in JavaScript mean? [duplicate]a!! 是什么意思?在 JavaScript 中是什么意思? [复制] 【发布时间】:2011-04-16 11:57:05 【问题描述】:

可能的重复:myVar = !!someOtherVarWhat does the !! operator (double exclamation point) mean in JavaScript?

遇到这行代码

strict = !!argStrict

...here 想知道!! 对线路有什么影响?对 JS 很陌生!

【问题讨论】:

我们需要***.com/questions/3737139/…的Javascript版本! 【参考方案1】:

它将您的值转换为布尔类型:

var x = '1';
var y = !!x;

// (typeof y === 'boolean')

还要注意以下几点:

var x = 0;
var y = '0';       // non empty string is truthy
var z = '';

console.log(!!x);  // false
console.log(!!y);  // true
console.log(!!z);  // false

【讨论】:

【参考方案2】:

它通过两次取反将值转换为布尔类型的值。当您想确保一个值是布尔值而不是其他类型的值时,可以使用它。

在 JS 中,所有处理布尔值的东西都接受其他类型的值,有些甚至可以返回非布尔值(例如,||&&)。 ! 但是总是返回一个布尔值,因此它可以用于将事物转换为布尔值。

【讨论】:

【参考方案3】:

是一对logical not operators。

它将虚假值(例如0false)转换为true,然后再转换为false,将真实值(例如true"hello")转换为false,然后再转换为@ 987654329@。

最终结果是你得到一个布尔版本的值。

【讨论】:

【参考方案4】:

它转换为布尔值

【讨论】:

【参考方案5】:

它是一个“不是”参数

常用于将(快捷方式)字符串值转换为布尔值

像这样..

if(!!'true') alert('its true')

【讨论】:

if(!!'false') alert('its true') 仍然提醒'true' 补充丹尼尔的评论,javascript中的非空字符串总是被认为是“真实的”。强制转换时,null 或空字符串将被视为“虚假”。也许您打算写if(!!true) alert('it is true') 你是对的!,对不起,糟糕/简短的答案.. :) 丹尼尔的回答更完整

以上是关于httpWebRequest.GetResponse() 基础连接已关闭 发送时发生错误的主要内容,如果未能解决你的问题,请参考以下文章