set XmlHttp=Server.createobject("MSXML2.serverXMLHTTP")
XmlHttp.open "get",myUrl,false
XmlHttp.setRequestHeader "Content-Type", "application/x-www-form-urlencoded"
XmlHttp.send
为什么在sp xp3的机子上运行,到send这步就会超时,提示0x80072EE2 错误,操作超时,但我用浏览器是
能直接打开上面的myUrl网址的,查了网上的方法,都是讲修改host的,有没有人
遇到这样的问题呀?快把人折磨死了
后来我发现用xmlhttp.responsetext就能返回值,但是一些不是用utf-8编码的就会产生乱码,而用xmlhttp.responsebody则就会出现超时的问题
------解决方案--------------------
请求时间设置长一点,设置编码跟你请求页面相同
- VBScript code
Set HTTP = Server.CreateObject("MSXML2.ServerXMLHTTP") HTTP.setTimeouts 10000,10000,10000,30000 HTTP.Open "GET", nSrc, false, "", "" HTTP.Send If HTTP.Readystate = 4 then If HTTP.Status = 200 Then Value = BytesToBSTR(HTTP.ResponseBody,nCharset) Else Value = "" End If Else Value = "" End If Public Function BytesToBSTR(Body,nCharset) Dim ObjStream Set ObjStream = Server.CreateObject("Adodb.Stream") ObjStream.Type = 1 ObjStream.Mode = 3 ObjStream.Open ObjStream.Write body ObjStream.Position = 0 ObjStream.Type = 2 ObjStream.Charset = nCharset BytesToBSTR = ObjStream.ReadText ObjStream.Close set ObjStream = Nothing End Function
------解决方案--------------------
换个电脑试试,很可能本机问题。
------解决方案--------------------
应该是你一次性请求数太多,就好像采集一样,一次采集太多就会超时。