Конференция "Сети" » Получение страницы по адресу. [D7, WinXP]
 
  • oleg_teacher (29.12.15 13:42) [0]
    Делаю запрос к сайту
         try
          idhttp.HandleRedirects:=True;
          IdHTTP.Get(href,stream);
          stream.Position:=0;
          st.LoadFromStream(stream);
         except
          st.Text:='';
         end;

    Проблема в том, что сайт выдает ошибку HTTP/1.1 300
    Я думал что HandleRedirects:=True позволит получить адресс новой страницы. Но IdHTTP.Response.Location пустота.
    Как все таки получить текст страницы при ошибке?
    Кстати.. когда смотрю в снифер - то даже при ошибке ему удается получить текст страницы
    Проблемная ссылка ставлю: feb-web.ru/feb/common/values.asp?book=ushakov&atr=titles
  • кгшзх © (29.12.15 16:30) [1]
    смотри что такое http 300
    и что от твоево инди при этом хочет сервер
  • Rouse_ © (29.12.15 23:28) [2]
    300 редирект на множестве - у тебя кривой запрос и сайт не знает что отдать
  • oleg_teacher (30.12.15 06:41) [3]
    в чем кривизна? вставь в браузер - отличный запрос будет. Покажет страницу
  • кгшзх © (30.12.15 09:46) [4]
    в браузере тебе тоже будет 300
  • кгшзх © (30.12.15 09:46) [5]
    и никаких редиректов там нет
    http 300 это не редирект
  • oleg_teacher (30.12.15 10:05) [6]
    да, в браузере 300.. но страница отображается.. а как же все таки текст получить в инди?
    Получается срабатывает исключение... то есть переменная не получает значение кода страницы.. и хз что делать.. никогда такое не было.. гуглу тоже вопрос не могу сформировать.. по ошибке 300 нет ниче
  • кгшзх © (30.12.15 10:52) [7]
    Выброси ты это инди. Тем более в случае http

    sample.vbs:


    dim xmlhttp : set xmlhttp = CreateObject("MSXML2.XMLHTTP.3.0")
    call xmlhttp.open("GET", "http://feb-web.ru/feb/common/values.asp?book=ushakov&atr=titles", false)
    call xmlhttp.send(null)

    MsgBox("Куку!" & VbCrLf & xmlhttp.responseText)

 
Конференция "Сети" » Получение страницы по адресу. [D7, WinXP]
Есть новые Нет новых   [134427   +35][b:0][p:0.001]