У меня есть скрипт, который отслеживает посещения и ссылки на сайт.
Я отправляю document.referrer (я использую escape () в javascript) на сервер
и сохраните строку в базе данных после ее декодирования с использованием HttpUtility.HtmlDecode (C #).
В большинстве случаев я могу разобрать строку реферера и показать ивритские символы,
но есть несколько случаев, которые я не могу.
Я обнаружил, что две строки разные (одна отображается справа, а другая нет)
Тот, который отображается справа, содержит такие символы:
http://www.google.co.il/search?hl=iw&source=hp&q=%D7%99%D7%91%D7%95%D7%90%D7%A0%D7%99%D7%9D% D7% 9C% D7% 9E% D7% AA% D7% A0% D7% 95% D7% AA & meta = & aq = f & oq =
Те, которые не отображаются должным образом (, если я не использую Microsoft.JScript.GlobalObject.unescape ), выглядят так:
http://www.google.co.il/custom?q=%FA%EE%E9%F8 -% F6% E9% E9% F8% EB% E1 & client = pub-0385896995839253 & forid = 1
Я могу понять, что вторая строка содержит символы ISO-8859-1 и работает должным образом, когда не экранирована на стороне сервера, но в коде URL отсутствует информация о кодировании
Итак, я не могу различить эти два формата. или я могу? я должен?
Примечание: когда я копирую и вставляю эти URL-адреса в адресную строку браузера, браузер обнаруживает первый как «Unicode (UTF-8)», а другой как «Windows-1255»
Thanx
Ярон