WinHTTP ResponceText UTF-8

Раздел посвящен программированию с использованием Power Basic.
Kroos
Обычный пользователь
Обычный пользователь
 
Сообщения: 55
Зарегистрирован: 21.02.2012 (Вт) 16:57

WinHTTP ResponceText UTF-8

Сообщение Kroos » 08.10.2014 (Ср) 8:03

При получении содержимого html-страницы с помощью WinHttpRequest в случае если страница отдается в Unicode UTF-8/16, то метод ResponceText валится с ошибкой 80070459 (такая же ситуация как описана здесь или здесь). Вопрос - при использовании ResponceBody или ResponceStream как в PB правильно их сконвертировать из UTF-8 в строку Win-1251 ? пробовал встроенные команды, winapi, adodb... не получается, вижу хлам или иероглифы. И если сервер работает только с utf-8, я так понимаю нужно будет потом все заголовки, данные и т.п. для отправки конвертить в utf-8 ?

Как временный вариант использую XMLHTTP (работает с utf-8 по умолчанию), но там куки и др. заголовки нельзя установить, что печалит... Пробовал сначала TCP OPEN PORT 443 ... , хз нет ответа, так понял потому что не поддерживается работа по HTTPS...

Qwertiy
Доктор VB наук
Доктор VB наук
 
Сообщения: 2753
Зарегистрирован: 26.06.2011 (Вс) 21:26

Сообщение Qwertiy » 08.10.2014 (Ср) 12:22

Kroos писал(а):как в PB правильно их сконвертировать из UTF-8 в строку Win-1251

Зачем так конвертировать? PB же поддерживает юникод, насколько я знаю.

Kroos
Обычный пользователь
Обычный пользователь
 
Сообщения: 55
Зарегистрирован: 21.02.2012 (Вт) 16:57

Re: WinHTTP ResponceText UTF-8

Сообщение Kroos » 08.10.2014 (Ср) 12:49

так надо. плюс, я даже в PB не могу получить строку в читабельном виде, например даже в этом примере с юникодным сервером в msgbox мусор


Вернуться в Power Basic

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

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

    TopList