asp ServerXMLHTTP не получает весь исходный код - PullRequest
0 голосов
/ 07 августа 2011
set objXmlHttp = Server.CreateObject("Msxml2.ServerXMLHTTP")
objXmlHttp.Open "GET", "http://www.yapi.com.tr/Haberler/e_61034.html", false
objXmlHttp.Send
response.write  objXmlHttp.ResponseText

Этот код не дает мне весь исходный код.Текст ответа - до "Yapı Dergisi, 284", но обычная страница до "/ body / html".Почему это случилось со мной?

Порядковый лист - http://www.yapi.com.tr/Haberler/e_61034.html

Мой код - http://www.mekanturu.com/1.asp

1 Ответ

0 голосов
/ 09 августа 2011

На исходной странице, кажется, есть нулевой байт в конце основной статьи (после «284»). Похоже, что ResponseText обрабатывает этот нулевой байт как конец строки ответа. Я смог получить полную статью, используя следующее:

<%
Response.CharSet = 65001
Response.AddHeader "Content-Type", "text/html;charset=UTF-8"
set objXmlHttp = Server.CreateObject("Msxml2.ServerXMLHTTP")
objXmlHttp.Open "GET", "http://www.yapi.com.tr/Haberler/e_61034.html", false
objXmlHttp.Send
Response.BinaryWrite  objXmlHttp.ResponseBody
%>

Обратите внимание, что я установил для символа ответа значение UTF-8, соответствующее исходной странице.

...