Вольдемар Опубликовано 1 ноября, 2017 Поделиться Опубликовано 1 ноября, 2017 Подскажите плиз, в чем ошибка в коде. Получаю 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; Цитата Ссылка на комментарий
0 Вольдемар Опубликовано 1 ноября, 2017 Автор Поделиться Опубликовано 1 ноября, 2017 IdHTTP.HandleRedirects := True; Не помогло Цитата Ссылка на комментарий
0 Alex7wrt Опубликовано 1 ноября, 2017 Поделиться Опубликовано 1 ноября, 2017 Не знаю, поможет или нет, но когда я пользовался TIdHttp, то обычно делал так: Var str: string; .............. str:=IdHttp.Get(s); .............. То есть без TMemoryStream. TIdHttp.Get является функцией типа string. Поэтому TMemoryStream для загрузки результата не использовал. А вот в THttpClient как раз использую такую конструкцию. Может и не в этом дело, конечно, но сейчас нет возможности проверить точнее. Цитата Ссылка на комментарий
0 Модераторы Равиль Зарипов (ZuBy) Опубликовано 2 ноября, 2017 Модераторы Поделиться Опубликовано 2 ноября, 2017 зачем использовать TMemoryStream и TStringLIst? есть же TStringStream Цитата Ссылка на комментарий
0 Модераторы Равиль Зарипов (ZuBy) Опубликовано 2 ноября, 2017 Модераторы Поделиться Опубликовано 2 ноября, 2017 ну а вообще, это ответ сервера, запрос неправильный Цитата Ссылка на комментарий
0 Вольдемар Опубликовано 2 ноября, 2017 Автор Поделиться Опубликовано 2 ноября, 2017 5 часов назад, Равиль Зарипов (ZuBy) сказал: ну а вообще, это ответ сервера, запрос неправильный запрос правильный, NetHttpclient с ним отлично работает Цитата Ссылка на комментарий
Вопрос
Вольдемар
Подскажите плиз, в чем ошибка в коде. Получаю 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 ответов на этот вопрос
Рекомендуемые сообщения
Присоединяйтесь к обсуждению
Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.