`

vbs的xmlHttp.responseText无效的调用过程

 
阅读更多
vbs真是门恶心人的语言,
set xmlhttp = CreateObject("MSXML2.XMLHTTP.3.0")
xmlhttp.open "GET",url, false
			xmlhttp.SetRequestHeader "Content-Type","text/xml;charset=utf-8"
			xmlhttp.setRequestHeader   "Cookie",HttpCookie
			log.log "http send "
			xmlhttp.send
			log.log "http.Status=" &xmlhttp.Status
			if xmlhttp.Status<>200 then
				log.log "获取数据失败。。。"
				exit sub
			end if
			log.log "http complete"
//log.log xmlhttp.ResponseText


这段代码有的时候成功,有的时候居然不成功。

800A0005无效的调用过程。


但是注掉最后一行
log.log xmlhttp.ResponseText
就可以正常执行,
实际原因是由于编码错码导致,编码错误的提示,居然是错误的过程调用。。。
实在是误导开发者。

以下为编码转换代码:
dim bts
			bts = xmlhttp.ResponseBody
			xml = BytesToBstr(bts,"gbk")
			log.log bts


	'使用Adodb.Stream处理二进制数据
Function BytesToBstr(strBody,CodeBase)
        dim objStream
        set objStream = CreateObject("Adodb.Stream")
        objStream.Type = 1
        objStream.Mode =3
        objStream.Open
        objStream.Write strBody
        objStream.Position = 0
        objStream.Type = 2
        objStream.Charset = CodeBase
        BytesToBstr = objStream.ReadText 
        objStream.Close
        set objStream = nothing
End Function 


  • 大小: 43.6 KB
分享到:
评论

相关推荐

    xmlhttp说明文档,xmlhttp中文帮助文档,chm格式

    getHtmlStr = StrConv(XmlHttp.ResponseBody, vbUnicode) Set XmlHttp = Nothing vb中下载文件的方法: Dim XmlHttp, Sobj Set XmlHttp = CreateObject("Microsoft.XMLHTTP") XmlHttp.Open "Get", ...

    xmlhttp.rar_xmlhttp

    而对于POST请求,可以将数据作为参数传递,如`xmlhttp.Send("key=value&anotherKey=anothervalue")`。 3. **处理响应**:通过`ReadyState`属性监控请求状态,当`ReadyState`为4(表示请求完成)且`Status`为200...

    XmlHttp.rar_xmlhttp

    例如,`xmlhttp.open('GET', 'test.txt', true);` 2. **send()** 方法:发送HTTP请求。对于GET请求,通常不需要传递参数;对于POST请求,可以将数据作为参数传递。例如,`xmlhttp.send();` 或 `xmlhttp.send('param...

    vbs HTTP.txt

    根据给定文件的信息,我们可以提炼出以下IT领域的关键知识点,主要围绕VBS脚本、HTTP请求、XMLHTTP对象以及与ASPX页面交互的过程。 ### VBS脚本与HTTP请求 VBS(Visual Basic Script Edition)是一种轻量级的脚本...

    VB使用XMLHTTP实现Post与Get的方法

    GetData = XMLHTTP.ResponseText Case ResponseBody GetData = XMLHTTP.ResponseBody Case ResponseBody + ResponseText ' 将二进制数据转换为字符串 DataS = BytesToStr(XMLHTTP.ResponseBody) GetData = ...

    Microsoft.XMLHttp组件的属性方法

    string backxmlstring = xmlHttp.responseText.ToString(); ``` 总结起来,Microsoft.XMLHttp组件提供了一种高效且灵活的方式,用于在客户端和服务器之间进行异步通信,处理XML数据和其他类型的数据,是Web开发中不...

    VB使用Microsoft.XMLHTTP判断程序是否联入互联网

    If xmlHttp.ResponseText = "" Or IsNull(xmlHttp.ResponseText) Then islink_fun = False Else islink_fun = True End If Else islink_fun = False End If End Function ``` 1. **函数定义**:定义了一个...

    ajax经典实例大全1,参看源码附件。。。。。。

    ajax经典实例大全1 &lt;!... function loadXMLDoc() { var xmlhttp;... if (window.XMLHttpRequest) ... // IE7+, Firefox, ... document.getElementById("myDiv").innerHTML=xmlhttp.responseText; } } xmlhttp.open

    Ajax原理分析及其实现的简单代码

    让更多人了解ajax技术.function _open(requestUrl) { var xmlHttp = false; var versions = ['Microsoft... resultHandle=xmlHttp.responseText; alert('返回结果:'+resultHandle); } };//执行回调函数 }

    Ajax精短实例教程

    var text = xmlhttp.responseText; ``` #### XMLHttpRequest.responseXML `responseXML` 属性用于获取服务器返回的XML数据,可以进一步解析: ```javascript var xmlDoc = xmlhttp.responseXML; ``` ### 4. 事件...

    WEB QQ登录VB实例

    XmlHttp.Open "GET", strUrl, True XmlHttp.send stime = Now '获取当前时间 While XmlHttp.ReadyState &lt;&gt; 4 DoEvents ntime = Now '获取循环时间 If DateDiff("s", stime, ntime) &gt; 3 Then getHtmlStr = "":...

    xmlhttp.rar_XMLHTTP delphi_delphi xmlHt_delphi xmlhttp_xmlhttp

    这个“xmlhttp.rar”压缩包包含的资源是关于如何在Delphi环境中使用XMLHTTP组件来从网络获取数据,特别是通过调用百度API获取实时时间的示例。这对于初学者来说是一个很好的起点,因为它可以帮助理解如何与Web服务...

    ajax省市联动

    function ajaxFunction... document.getElementById(ar).innerHTML=xmlHttp.responseText; } } xmlHttp.open("GET","http://localhost/ajax/ajax.php?id="+url+"&level="+level,true); xmlHttp.send(null); }

    XMLHTTP.rar_xmlhttp

    `XMLHTTP.chm`文件可能是一个帮助文档,包含了关于XMLHttpRequest更详细的API介绍、示例代码和常见问题解答。`www.pudn.com.txt`可能是从pudn网站下载的相关资料,可能包含使用XMLHTTP的实践经验或者相关教程。 ...

    XMLHTTP对象参考手册

    客户端可以通过XmlHttp对象(MSXML2.XMLHTTP.3.0)向http服务器发送请求并使用微软XML文档对象模型Microsoft® XML Document Object Model (DOM)处理回应。 现在的绝对多数浏览器都增加了对XmlHttp的支持,IE中使用...

    xmlHTTP.rar_xmlhttp_xmlhttp java_xmlhttp下载

    在"xmlHTTP.rar"这个压缩包中,我们可能找到了一个关于xmlhttp使用的示例。"xmlHTTP"可能是包含JavaScript代码的文件,该代码展示了如何创建和使用XMLHttpRequest对象来发送HTTP请求并接收响应。通过这种方式,...

    xmlhttp.rar_刷新 数据库

    "xmlhttp.rar_刷新 数据库"这个压缩包文件很可能包含了一个关于如何使用XHR对象从数据库获取数据的示例。 在Web应用中,用户通常希望页面能够快速响应,而无需等待整个页面重新加载。这就是XHR发挥作用的地方。...

    获取百度网络时间,Microsoft.XMLHTTP实例

    responseText = xmlHttp.responseText ' 这里需要根据实际返回的数据格式进行解析,假设返回的是ISO 8601格式的日期时间 serverTime = ParseDateTime(responseText) ' 打印或记录服务器时间 WScript.Echo ...

Global site tag (gtag.js) - Google Analytics