• 0
Вольдемар

class EIdHTTPProtocolException with message 'HTTP/1.1 400 Bad Request'

Вопросы

Подскажите плиз, в чем ошибка в коде. Получаю 400 Bad Request  (запрос в s - корректный):

  IdHTTP := TIdHttp.Create;
  SSL := TIdSSLIOHandlerSocketOpenSSL.Create;
  MyMemory := TMemoryStream.Create;
  OutS := TStringList.Create;
  try
    IdHTTP.IOHandler := SSL;
    IdHTTP.Get(s, MyMemory);
    MyMemory.Position := 0;
    OutS.LoadFromStream(MyMemory);
    result := OutS.Text;
  finally
    IdHTTP.Free;
    SSL.Free;
    MyMemory.Free;
    OutS.Free;
  end;

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

5 ответов на этот вопрос

  • 0

Не знаю, поможет или нет, но когда я пользовался TIdHttp, то обычно делал так:

Var str: string;

..............

str:=IdHttp.Get(s);

..............

То есть без TMemoryStream. TIdHttp.Get является функцией типа string. Поэтому TMemoryStream для загрузки результата не использовал. А вот в THttpClient как раз использую такую конструкцию. 

Может и не в этом дело, конечно, но сейчас нет возможности проверить точнее.

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
  • 0

зачем использовать TMemoryStream и  TStringLIst?

есть же TStringStream

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
  • 0

ну а вообще, это ответ сервера, запрос неправильный

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
  • 0
5 часов назад, Равиль Зарипов (ZuBy) сказал:

ну а вообще, это ответ сервера, запрос неправильный

запрос правильный, NetHttpclient с ним отлично работает

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Для публикации сообщений создайте учётную запись или авторизуйтесь

Вы должны быть пользователем, чтобы оставить комментарий

Создать учетную запись

Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!

Регистрация нового пользователя

Войти

Уже есть аккаунт? Войти в систему.

Войти


  • Последние посетители   0 пользователей онлайн

    Ни одного зарегистрированного пользователя не просматривает данную страницу