Проблема кодирования IE 8

у нас есть wep приложение, когда использование китайских слов в ДОБИРАЕТСЯ, строка запроса не может получить корректный параметр на стороне сервера, но в данных POST мы можем получить корректный параметр на стороне сервера. сервер является Tomcat. на стороне сервера мы используем GBK, кодирующий для получения параметров HTTP, если я преобразовываю кодирование параметров в в строке запроса от ISO8859-1 до GBK, это правильно, но проблема существует слишком много страниц JSP к change.so, который я хочу, если там должен так или иначе настроить IE для отправки строки запроса с помощью GBK, но iso8859-1. Я пытался снять флажок, "отправляют URL UTF-8" опция IE, это не работало на меня...

ПОМОГИТЕ ИЗВИНИТЕ ЗА МОЙ ПЛОХОЙ АНГЛИЙСКИЙ ЯЗЫК!

//интервал iPostChange 0:ISO8859_1,1:NoChange, 2:ISO8859_1-> GBK, 3:GBK-> ISO8859_1,5:GBK

String sFlowNo = DataConvert.toRealString(iPostChange,(String)CurComp.getParameter("FlowNo"));

iPostChange используется для установки преобразования кодирования, значение по умолчанию равняется 1, что означает, не изменяются. FlowNo, как предполагается, является некоторыми китайскими словами, если FlowNo передается серверу в URL (HTTP ПОЛУЧАЮТ строку запроса) со значением по умолчанию iPostChange, я не могу получить правильную китайскую строку, но если FlowNo передается серверу в Форме (использующий метод POST), я могу получить правильную китайскую строку.

это - IE8, не поддерживал использующие китайские символы в URL?

1
задан idiotgenius 21 July 2010 в 11:48
поделиться

2 ответа

fixed.

см : Tomcat wiki

Tomcat будет использовать ISO-8859-1 в качестве кодировки символов по умолчанию для всего URL, включая строку запроса ("параметры GET"). Есть два способа указать, как интерпретируются GET-параметры:

  1. Установить атрибут URIEncoding на элемента в server.xml на что-то определенное (например, URIEncoding="UTF-8").

  2. Установите атрибут useBodyEncodingForURI атрибут на элементе в файле server.xml значение true. Это заставит коннектор использовать кодировку тела запроса для GET параметры.

1
ответ дан 2 September 2019 в 22:53
поделиться

Лучше не полагаться на кодировку символов в запросах GET, поскольку некоторые браузеры будут кодировать их в UTF-8, а другие будут кодировать как ISO-8859-1. Кроме того, применяемая кодировка зависит от кодировки страницы, отправившей форму, поэтому, хотя одна форма на странице, закодированная в UTF-8, приведет к запросу GET в кодировке UTF-8, аналогичная форма на странице с Кодировка ISO-8859-1 приведет к запросу в кодировке ISO-8859-1.

См. Также Какая правильная кодировка строк HTTP-запроса на получение? для более подробного объяснения.

1
ответ дан 2 September 2019 в 22:53
поделиться
Другие вопросы по тегам:

Похожие вопросы: