Модераторы: javastic, AntonSaburov
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> кирилица в хедере Http запроса 
:(
    Опции темы
zzzvyk
Дата 3.9.2009, 16:09 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 64
Регистрация: 21.4.2007
Где: Киев

Репутация: нет
Всего: нет



Всем привет!
такая вот задача:
 
Код

 conn = (HttpConnection) Connector.open(url);
 conn.setRequestMethod(HttpConnection.POST);
 .........
 conn.setRequestProperty("Name","привет! меня зовут Вася");

Вопрос : в какой кодировке отправится проперти?
               зависит ли это от модели телефона?



Это сообщение отредактировал(а) zzzvyk - 3.9.2009, 16:39
PM MAIL Skype   Вверх
Выхухоль
Дата 3.9.2009, 17:16 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 85
Регистрация: 9.10.2008
Где: Ташкент

Репутация: 2
Всего: 2



Цитата(zzzvyk @  3.9.2009,  16:09 Найти цитируемый пост)
зависит ли это от модели телефона?

нет


Цитата(zzzvyk @  3.9.2009,  16:09 Найти цитируемый пост)
в какой кодировке отправится проперти?

в какой вставишь...
Код

conn.setRequestProperty("Name","привет! меня зовут Вася".ToString("UTF-8"));

PM MAIL ICQ   Вверх
zzzvyk
Дата 3.9.2009, 17:28 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 64
Регистрация: 21.4.2007
Где: Киев

Репутация: нет
Всего: нет



2 Выхухоль
 разве есть  метод String.toString(encoding) ?

PM MAIL Skype   Вверх
zzzvyk
Дата 3.9.2009, 17:44 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 64
Регистрация: 21.4.2007
Где: Киев

Репутация: нет
Всего: нет



Однако.. проблема принимает другой оборот:
сначала я подумал что отсылается в какой-то непонятной серверу  кодировке но  при включении сниффера видно что уже там кодировка навернулась. а все символы данного поля  заменены на знаки вопроса. (char code '?'). кроме то  выяснилось что  проблемы не со всей кирилицей, а только если присутсвуют украинсикие буквы. Но от этого не легче, так как на очереди иврит, арабский  и не понятно что там будет.

вобщем вопрос формируется иначе
как передать в хедере кирилицу, чтоб она не наворачивалась ? 

можно конечно Base64, но тада нада менять сервер,   это как крайняя мера

Добавлено через 12 минут и 52 секунды
есть маленькая надежда что проблема в прокси....

Это сообщение отредактировал(а) zzzvyk - 3.9.2009, 17:50
PM MAIL Skype   Вверх
COVD
Дата 3.9.2009, 23:02 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1655
Регистрация: 26.7.2005

Репутация: нет
Всего: 43



Проблема в сниффере скорее всего. Возможно, это он не смог воспроизвести текст.  Каждая строка http хедера это текст (набор байтов) заканчивающийся символами \r\n ( CRLF ) , т.е. байтами 13 и 10. Кончается хедер пустой строкой, т.е. это \r\n\r\n . К прокси клиентские нестандартные параметры отношения не имеют и на его функции не влияют. Поэтому проблем с пересылкой быть не должно, если текст (не важно на каком языке) не содержит последовательности байт 13,10. Но я бы не стал так делать.

Можно почитать спецификацию http://www.w3.org/Protocols/rfc2616/rfc2616-sec4.html#sec4.2 .

Это сообщение отредактировал(а) COVD - 3.9.2009, 23:34
PM MAIL   Вверх
Выхухоль
Дата 4.9.2009, 06:14 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 85
Регистрация: 9.10.2008
Где: Ташкент

Репутация: 2
Всего: 2



zzzvyk, сорри впарился...
вот так..
Код

conn.setRequestProperty("Name",new String("привет! меня зовут Вася","UTF-8"));

PM MAIL ICQ   Вверх
zzzvyk
Дата 4.9.2009, 10:43 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 64
Регистрация: 21.4.2007
Где: Киев

Репутация: нет
Всего: нет



Выхухоль
 такого конструктора тоже нет.  ты случайно с  С# не путаешь?

В общем, вряд-ли есть какое-то простое решение.
решено- договорится с ребятами с сервера и перекодировать в что-то похожее на Base64



PM MAIL Skype   Вверх
Dancer
Дата 8.9.2009, 12:09 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 537
Регистрация: 29.4.2005
Где: Nizhniy Novgorod

Репутация: 33
Всего: 37



String str = "Василий!";
conn.setRequestProperty("Name",new String(str.getBytes("UTF-8"), "UTF-8"));


--------------------
У программистов есть великая тайна: всё, что только можно, было давно кем-то когда-то написано. Разработчику только нужно знать в какое место кода какие строчки вставить! smile
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса

  • Прежде чем задать вопрос прочтите это!
  • Литература по Java находится здесь.
  • Литературу по Java обсуждаем здесь.
  • Используйте теги [code=java][/code] для подсветки кода. Используйтe чекбокс "транслит" (возле кнопок кодов) если у Вас нет русских шрифтов.
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда

  • FAQ раздела лежит здесь!
 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Java ME (J2ME) | Следующая тема »


 




[ Время генерации скрипта: 0.0481 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.