版本
MSXML 2.0及以上版本
responseStream属性
以Ado Stream对象的形式返回响应信息
语法
strValue = oXMLHttpRequest.responseStream;
备注
返回值为Variant类型,只读。XMLHTTP的responseStream从服务器返回一数据流入 stream(IStream)。该包含了从服务器返回的未经解码的二进制数据,因此,基于请求不同的服务器,最终会显示不同的二进制编码数据(UTF- 8, UCS-2, UCS-4, Shift_JIS等等)。如果请求的网页的数据编码不是二进制,则会发生乱码。
版本
MSXML 2.0及以上版本
responseText属性
以字符串形式返回响应信息(即我们通常见到的网页源文件)
语法
strValue = oXMLHttpRequest.responseText;
示例
Dim xmlhttp As New Msxml2.XMLHTTP30
xmlhttp.open \
xmlhttp.send
MsgBox xmlhttp.responseText
备注
返回值为String类型,此属性只读。
XMLHTTP尝试将响应信息解码为Unicode字符串,XMLHTTP默认将响应数据的编码定为UTF-8,如果服务器返回的数据是匹配的Unicode BOM(byte-order mark)编码,XMLHTTP可以解码任何UCS-2 (big or little endian)或者UCS-4 数据。注意,如果服务器返回的是xml文档,此属性并不处理xml文档中的编码声明。你需要使用responseXML来处理。
这个responseText属性包含客户端接收到的HTTP响应的文本内容。当readyState值为0、1或2时,responseText包含一个空字符串。当readyState值为3(正在接收)时,响应中包含客户端还未完成的响应信息。当readyState为4(已加载)时,该responseText包含完整的响应信息。
版本
MSXML 2.0及以上版本
responseXML属性
以Xml Document对象形式返回将响应信息
语法
Set objDispatch = oXMLHttpRequest.responseXML
示例
Dim xmlhttp As New Msxml2.XMLHTTP30
xmlhttp.open \ xmlhttp.send
MsgBox xmlhttp.responseXML.xml
备注
此属性只读,将响应信息格式化为Xml Document对象并返回。如果响应数据不是有效的XML文档,此属性本身不返回XMLDOMParseError,可以通过处理过的DOMDocument对象获取错误信息。
此responseXML属性用于当接收到完整的HTTP响应时(readyState为4)描述XML响应;如果响应实体不是有效的xml格式,则返回错误。无论何时,只要readyState值不为4,那么该responseXML的值也会返回null。
如果Content-Type头部并不包含以下这些媒体类型之一:Content-Type头部指定MIME(媒体)类型为text/xml,application/xml或以+xml结尾,例如,\,那么responseXML的值为null。
其实,这个responseXML属性值是一个文档接口类型的对象,用来描述被分析的文档。如果文档不能被分析(例如,如果文档不是良构的或不支持文档相应的字符编码),那么responseXML的值将为null。
版本
MSXML 2.0及以上版本
status属性
返回当前请求的http状态码,长整型,只读。
语法
lValue = oXMLHttpRequest.status;
示例
Dim xmlServerHttp As New Msxml2.ServerXMLHTTP30
xmlServerHttp.open \xmlServerHttp.send
MsgBox xmlServerHttp.status
返回值
长整形标准http状态码,定义如下:
状态码 100 101 200 201 202 203 204 205 206 300 301 302 303 304 305 307 400 401 402 403 404 405 406 407 408 409 410 411
Continue
Switching protocols OK Created Accepted
Non-Authoritative Information No Content Reset Content Partial Content Multiple Choices Moved Permanently Found See Other Not Modified Use Proxy Temporary Redirect Bad Request Unauthorized Payment Required Forbidden Not Found Method Not Allowed Not Acceptable
Proxy Authentication Required Request Timeout Conflict Gone
Length Required
描述
412 413 414 415 416 417 500 501 502 503 504 505
Precondition Failed Request Entity Too Large Request-URI Too Long Unsupported Media Type Requested Range Not Suitable Expectation Failed Internal Server Error Not Implemented Bad Gateway Service Unavailable Gateway Timeout
HTTP Version Not Supported
备注
以长整形数字来表示当前请求的http状态,此属性仅当数据发送并接收完毕后才可获取。 而且,仅当readyState值为3(正在接收中)或4(已加载)时,这个status属性才可用。当readyState的值小于3时试图存取status的值将引发一个异常。
版本
MSXML 2.0及以上版本
statusText属性
返回当前请求的响应状态代码描述,字符串类型,只读。
语法
strValue = oXMLHttpRequest.statusText
示例
Dim xmlhttp As New Msxml2.XMLHTTP30
xmlhttp.open \xmlhttp.send
MsgBox xmlhttp. statusText
备注
以BSTR返回当前请求的响应状态代码描述,此属性仅当数据发送并接收完毕后才可获取,即仅当readyState值为3或4才可用。当readyState为其它值时试图存取statusText属性将引发一个异常。
版本
MSXML 2.0及以上版本