Кодировка http запроса

1. 25.11.16 13:06 Сейчас в теме
Отправляю http-get запрос с мобильного устройства. В заголовках указываю параметр, в нем содержатся кирилические символы. При чтении на стороне сервера 1С читается полная несуразица.
Пример:

Заголовки.Вставить("AutoNum", "А 111 АА");

Сервер читает как "Рђ 111 РђРђ"

Интуиция подсказывает что дело в кодировке. Скорее всего сервер читает UTF-8 как windows-1251.

Внимание вопрос. Как заставить сервер читать заголовки в кодировке UTF-8???
Ответы
В избранное Подписаться на ответы Сортировка: Древо развёрнутое
Свернуть все
2. spezc 746 25.11.16 13:12 Сейчас в теме
попробуйте добавить что-то то типа:

	Response = New HTTPServiceResponse(200);
	Response.Headers.Insert("Content-Type","text/html; charset=utf-8");
		
	IndexPageText = WebPages.GetAuthPage();
	
	Response.SetBodyFromString(IndexPageText);  
	
	Return Response;

Timekiller; TetZ; kogl208; Istur; +4 Ответить
3. Добрый сосед 25.11.16 13:55 Сейчас в теме
Проблему обошел тем, что воспользовался POST-запросом, и запихнул нужную мне информацию в тело запроса а не в заголовки.
Но вопрос всё равно остался. Сталкиваюсь с этим второй раз, а это уже тенденция.
4. spezc 746 25.11.16 14:55 Сейчас в теме
(3) указание кодировки в заголовках не помогло?
7. dj_serega 384 25.11.16 23:55 Сейчас в теме
(3) В заголовках кириллицу не передать.
5. Serginio 908 25.11.16 15:42 Сейчас в теме
Смотри метод КодироватьСтроку (EncodeString)
6. Serginio 908 25.11.16 15:51 Сейчас в теме
Но скорее у тебя АА должны быть на латинице, а не на кириллице
8. Добрый сосед 29.11.16 07:31 Сейчас в теме
Указание кодировки - не помогло.
АА хочу именно на кирилице. Передаю номер авто, но это частный случай. Хочется передавать также имя пользователя.
Как написал выше, решение - POST запрос.
9. spezc 746 29.11.16 10:15 Сейчас в теме
(8) а КодироватьСтроку (EncodeString)?
10. dj_serega 384 29.11.16 12:29 Сейчас в теме
(9) Я такого не видел в 1С. Не говоря уже о мобильном. Там много урезанного (взять к примеру json).
11. spezc 746 29.11.16 12:43 Сейчас в теме
(10)

Глобальный контекст (Global context)
КодироватьСтроку (EncodeString)
Синтаксис:

КодироватьСтроку(<Строка>, <СпособКодированияСтроки>, <КодировкаСтроки>)
Параметры:

<Строка> (обязательный)

Тип: Строка.
Кодируемая строка.
<СпособКодированияСтроки> (обязательный)

Тип: СпособКодированияСтроки.
Способ кодирования строки.
<КодировкаСтроки> (необязательный)

Тип: Строка.
Кодировка, в которую преобразуется строка перед кодированием.
Значение по умолчанию: UTF8.
Возвращаемое значение:

Тип: Строка.

Описание:

Кодирует строку в соответствии с выбранным способом кодирования.

Доступность:

Сервер, толстый клиент, внешнее соединение, мобильное приложение(сервер).
Пример:

Стр1 = КодироватьСтроку("http://tools.ietf.org/папка/rfc2822", 
                СпособКодированияСтроки.КодировкаURL);
Стр2 = КодироватьСтроку("http://tools.ietf.org/папка/rfc2822", 
                СпособКодированияСтроки.URLВКодировкеURL);
Стр3 = РаскодироватьСтроку( 
                "http://ru.wikipedia.org/wiki/%D0%A8%D0%B0%D1%80", 
                СпособКодированияСтроки.КодировкаURL);

Сообщить(Стр1);
Сообщить(РаскодироватьСтроку(Стр1, 
                СпособКодированияСтроки.КодировкаURL));
Сообщить(Стр2);
Сообщить(РаскодироватьСтроку(Стр2, 
                СпособКодированияСтроки.КодировкаURL));
Сообщить(Стр3);
Сообщить(КодироватьСтроку(Стр3, 
                СпособКодированияСтроки.URLВКодировкеURL));
Показать



См. также:

СпособКодированияСтроки
Глобальный контекст, метод РаскодироватьСтроку

--------------------------------------------------------------------------------

Методическая информация
y_mach; Andreyyy; frkbvfnjh; +3 Ответить
12. dj_serega 384 30.11.16 09:58 Сейчас в теме
(11) Ну от. Это уже есть с 8.3.9.1818. "Данная функциональность не поддерживалась на мобильной платформе."

Источник: http://downloads.v8.1c.ru/content//Platform/8_3_9_1818/1cv8upd.htm#514aa822-a592-11e2-adcc-e61f135f174b

upd: А какая платформа у ТС неясно ;)
14. lisrws 124 07.04.20 13:00 Сейчас в теме
Если папка в которую пытаемся загрузить товар на русском, то выдает ошибку. Замените в ЗагрузитьФайл фрагмент
Заголовки.Вставить("Dropbox-API-Arg", "{""path"": """ + Элементы.Файлы.ТекущиеДанные.Файл + "/" + ОбщийКлиент.КодироватьВUnicode(Ф.Имя, Истина, Истина) + """, ""mode"": ""overwrite"", ""autorename"": false, ""mute"": true}");

на
Заголовки.Вставить("Dropbox-API-Arg", "{""path"": """ + ОбщийКлиент.КодироватьВUnicode(Элементы.Файлы.ТекущиеДанные.Файл, Истина, Истина) + "/" + ОбщийКлиент.КодироватьВUnicode(Ф.Имя, Истина, Истина) + """, ""mode"": ""overwrite"", ""autorename"": false, ""mute"": true}");
15. lisrws 124 07.04.20 13:30 Сейчас в теме
(14)сорян, не в ту ветку вставил)) а удалить не дает
Оставьте свое сообщение
Вакансии
Программист, аналитик, эксперт 1С
Санкт-Петербург
По совместительству

Программист 1С
Рязань
зарплата от 150 000 руб. до 250 000 руб.
Полный день

Архитектор 1С
Обнинск
зарплата от 150 000 руб. до 350 000 руб.
Полный день

Программист 1С
Обнинск
зарплата от 200 000 руб.
Полный день

Переход с УПП на ЕРП2
Колпашево
зарплата от 150 000 руб.
Временный (на проект)