wininet InternetOpenUrl error 6 INVALID_HANDLE

一个程序用wininet实现http请求,url较长有大约4K左右,但在部分XP机器上会出现InternetOpenUrl返回NULL,错误值为6 INVALID_HANDLE。当时调整了各种参数查了各种资料都无法解决,后来干脆直接用socket写了,今天看到一个文章http://blog.163.com/da2qia1ku5@126/blog/static/35485935201010295035495/,回想之前的错误应该就是这个原因,wininet实现应该是和ie内核版本相关的。URL的长度限制在服务器端一般在8K左右,所以一般限制取决于客户端,附上那篇文章。

各浏览器HTTP Get请求URL最大长度并不相同,几类常用浏览器最大长度及超过最大长度后提交情况如下:

IE6.0                :url最大长度2083个字符,超过最大长度后无法提交。
IE7.0                :url最大长度2083个字符,超过最大长度后仍然能提交,但是只能传过去2083个字符。
firefox 3.0.3     :url最大长度7764个字符,超过最大长度后无法提交。
Opera 9.52       :url最大长度7648个字符,超过最大长度后无法提交。
Google Chrome 2.0.168   :url最大长度7713个字符,超过最大长度后无法提交。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章