Перенаправление сервлета на Unicode-домены

У меня проблемы с отправкой перенаправлений на сервлет с Unicode-URL.

т.е. следующий URL на турецком языке

http: //türkçeisimtescil.com

Работает, если вставить его в адресную строку браузера. Однако по вашему запросу он переведен на

http://xn--trkeisimtescil-ijb74a.com

вашим браузером.

Допустим, у меня есть первый URL с характерными для UTF8 символами, и я успешно его получаю из DB. Я хочу перенаправить свой сервлет на этот URL.

Однако, когда я просто делаю response.sendRedirect (url); (согласно заголовкам), он перенаправляет меня на www. t% 1frk% e7eisimtescil.com

Я пробовал даже response.sendRedirect ("http: //www.t \ u011Frk \ u00E7eisimtescil.com"); (встроенное кодирование), и ответ в точности соответствует То же самое.

Возможно, если я получу türkçeisimtescil.com в заголовках, браузер преобразует его в xn - .. формат, и это будет успешно.

Я не мог понять, где кодировка была нарушена. Любая помощь приветствуется.

6
задан AhmetB - Google 21 May 2011 в 17:21
поделиться