Как получить кодировку клиента?

#jsp #servlets #character-encoding

#jsp #сервлеты #кодировка символов

Вопрос:

Я пишу веб-сайт jsp, на котором я получаю запрос от клиента. Я должен нормализовать кодировку запроса, я имею в виду, что я должен изменить запрос с его кодировки на UTF-16. Из-за этого мне нужно знать кодировку клиента.

Отправляют ли браузеры эту информацию по запросу?

Ответ №1:

Комментарии:

1. но я всегда получаю null из этой функции, почему?

2. клиент не отправил никакой кодировки

3. и мне нужен надежный способ найти кодировку. 100% решение

4. если клиент не отправляет его, определить его невозможно. Итак, у вас нет 100% решения

Ответ №2:

Поскольку вы используете jsp, вам следует попробовать использовать некоторые полезные методы, предлагаемые java.

 public Map getHeaderFields()
  

предоставит вам карту всех заголовков, которые вы ищете..

Кроме того, у вас есть:

  String getContentEncoding() 
          Returns the value of the content-encoding header field.

 String getContentType() 
          Returns the value of the content-type header field.

 String     getCharacterEncoding()
Returns the name of the character encoding used in the body of this request. This method returns null if the request does not specify a character encoding
  

Комментарии:

1. Какой класс имеет эти функции?

2. httpservletrequest и urlconnection