Как избежать неанглийского символа на стороне сервера - PullRequest
0 голосов
/ 21 декабря 2011

Моя машина поддерживает несколько языков, кроме английского, например, китайский, хинди и немецкий.

У меня есть веб-приложение, которое отправляет escape(innerHTML) с клиента на сервер, где содержимое innerHTML записывается в файл на стороне сервера,Он работает нормально, и нет никаких проблем, если все символы указаны на английском языке.
Но если какой-либо символ не на английском языке, я получаю исключение на стороне сервера.

var innerHTML = escape (document.getElementBYId("id_1").innerHTML); 
  let suppose,  
     innerHTML = escape("<div id="test"> <p> 
                             There are some text in english  </p> </div>);

now i use AJAX to send this innerHTML to server and it works correctly.

Приведенный выше пример работает, если все символы написаны на английском языке, но если любой символ используется, скажем, на хинди, я получаю исключение на стороне сервера

 let suppose,
         innerHTML = escape ( "<div id="test"> <p> 
                                    some text in **** hindi </p>  </div>");
   now, i send this via ajax function to the server but getteing error.

, пожалуйста, дайте мне лучшую идею для решения этой проблемы.Должен ли я применять internationalization на стороне клиента и сервера?или только на стороне сервера?

* Исключение, которое я получаю на стороне сервера: *

Dec 21, 2011 4:55:15 PM org.apache.tomcat.util.http.Parameters processParameters

WARNING: Parameters: Character decoding failed. Parameter 'innerHTML' with value '

1 Ответ

2 голосов
/ 21 декабря 2011

Попробуйте использовать encodeURIComponent () вместо escape ()

Также убедитесь, что страница имеет кодировку UTF8 для работы с разными языками.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...