Indy 10. TIdHTTP возвращает 302-ю ошибку

Вопросы программирования и использования среды Lazarus.

Модератор: Модераторы

Indy 10. TIdHTTP возвращает 302-ю ошибку

Сообщение zozuliar » 28.02.2014 19:15:26

Здравствуйте.
Положил я на форму TIdHTTP, TEdit и TButton.
TEdit'у по умолчанию прописал значение свойства Text "http://ya.ru"
По нажатию кнопки Button1 выполняю:
Код: Выделить всё
procedure TForm1.Button1Click(Sender: TObject);
var
  stream: TMemoryStream;
begin
  stream:= TMemoryStream.Create;
  showMessage(eUrl.Text);
  IdHttp1.Get(eUrl.Text, stream);
  stream.SaveToFile('g:a.txt');
end;     

Если урл в Эдите не менять - всё хорошо, а если прописываю в Эдите другой урл, другого сайта вместо ya.ru (например, yandex.ru) - получаю ошибку "302 Found". Как мне скачивать содержимое произвольного урла в свой файл a.txt?

Добавлено спустя 5 минут 1 секунду:
Win7 32bit
Lazarus 1.0.14
FPC 2.6.2

Добавлено спустя 26 минут 48 секунд:
когда я стал запрашивать не корневые страницы популярных сайтов, а прямые урлы обычных картинок на сайтах в зоне *.com.ua - всё заработало. Странно.
У вас нет необходимых прав для просмотра вложений в этом сообщении.
zozuliar
новенький
 
Сообщения: 35
Зарегистрирован: 09.02.2014 21:56:58

Re: Indy 10. TIdHTTP возвращает 302-ю ошибку

Сообщение ZeUsM » 03.03.2014 10:26:33

Возможно проблема с тем, что на некоторых сайтах в корне указан редирект.
Включайте в компоненте
Код: Выделить всё
idhttp.HandleRedirects := True;
и попробуйте с таким включенным параметром, 302 ошибка должна исчезнуть.
Аватара пользователя
ZeUsM
новенький
 
Сообщения: 57
Зарегистрирован: 08.11.2010 13:55:35
Откуда: Нерезиновая

Re: Indy 10. TIdHTTP возвращает 302-ю ошибку

Сообщение zozuliar » 03.03.2014 15:35:42

Спасибо
zozuliar
новенький
 
Сообщения: 35
Зарегистрирован: 09.02.2014 21:56:58


Вернуться в Lazarus

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 231

Рейтинг@Mail.ru