| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Delphi: Сети > idHttp.post возвращает ????? знаки вопросов |
| Автор: Akella 23.9.2011, 10:37 | ||
| D2007, Indy 10.5.8 Код примерно такой:
Получаю вместо кириллицы ????? знаки вопросов. Даже не юникодные кракозябры, которые можно было перевести в win1251. Вот такое: phones_list=8787878787(????);555555(????????);80973232756(????);7178823(????????); В скобках должны быть имена на русском. Как получить юникод вместо ????? /// На сервере самописная процедура на php, которая обрабатывает мой запрос и отдает мне ответ. Да, там можно отдавать ответ уже в нужной кодировке. Но хочется получать именно в юникоде. P.S. Мышки плакали, кололись, но продолжали есть кактус. |
| Автор: MetalFan 23.9.2011, 14:10 |
| 1. что кажет http отладчик? 2. отладка индей поможет) |
| Автор: Akella 23.9.2011, 14:28 | ||
| минуту назад решил вопрос Нашёл процедуру с возможностью получения ответа в качестве потока
теперь m1.DataString содержит нужные текстовые юникодные данные с правильной кириллицей. Добавлено @ 14:28 Но я считаю, что это очередной баг инди |
| Автор: iwpwork 26.3.2013, 13:29 |
| Ищите ответы на нормальных буржуйских форумах, а не на наших, где кроме как троллить - ничего не умеют. var ds: TIdMultipartFormDataStream; begin ds := TIdMultipartFormDataStream.Create; try ds.AddFormField('test', UTF8Encode('äöüß'), 'utf-8').ContentTransfer := '8bit'; try ShowMessage(HTTP.Post('http://localhost/test.php', ds)); except end; finally FreeAndNil(ds); end; end; |
| Автор: Akella 26.3.2013, 14:08 | ||
лучше заменить на правильную функцию у меня был случай, когда на страничке были неюникодные символы и UTF8Encode возвращала просто пустоту UTF8 to string
Добавлено @ 14:08 iwpwork, советую к прочтению http://forum.vingrad.ru/forum/topic-353769.html |