Today there is no intention of discovering a problem, there are several pages using MSXML2. ServerXMLHTTP get the page source code,. ResponseText always returns part of the content and cannot get the full content.
After searching, find the solution: use. Responsebody (reference: http://blog.links.cn/asp/aspxmlhttp.html)
However, from the reference article, his problem is not exactly the same as mine, when I test, just replace the responsetext to Responsebody, the problem is solved .
The reference article also mentions a bug in ADODB.stream that requires Chr (0) to be replaced with ""
' HttpGet = Xmlhttp.responsetext
HttpGet = replace (Bytestobstr (xmlhttp.responsebody, "Utf-8"), chr (0), "")
' bytes are converted into characters according to the specified encoding
Function Bytestobstr (Body,cset)
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 = Cset
Bytestobstr = objstream. ReadText
Objstream. Close
Set objstream = Nothing
End Function
MSXML2. ServerXMLHTTP ResponseText Get incomplete content, solution