Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Java EE (J2EE) и Spring > Две точки в URL


Автор: Seh 28.3.2008, 14:55
Всем привет.
Я использую томкат 5.5. 
Обнаружил такую вещь, что если в URL присутствуют две точки то происходит "подъем в родительскую директорию". На примере это вглядит так: http://mysite.com/user/parent/.. Томкат переведет запрос на http://mysite.com/user  
Можно ли как то от этого избавиться?? 
Уже в первом фильтре адрес выглядит как http://mysite.com/user . ((

Автор: AlexeyVorotnikov 31.3.2008, 14:36
На сколько я знаю, две точки и есть подъём в родительскую директорию, так что Томкат всё правильно делает.
А что есть проблемы с этим?

Автор: Seh 1.4.2008, 18:29
Привет.
Да с эти как раз и есть проблемы. У нас организуется поиск по нашему сервису, и URL выглядит, как www.site.com/search/"строка поиска"
Вот если пользователь введет две точки, то получится не то что он ожидал.

Автор: Samotnik 1.4.2008, 19:15
Seh,  а  какие проблемы поставить валидацию?  Типа, если введены  точки, то  окошечко с  ошибочкой вывести ? 
или нужно, чтобы томкат работал, если введены точки ?

Автор: Seh 2.4.2008, 14:32
Привет.
Samotnik, как раз и надо чтобы работало с двумя точками. Как я писал в первом посте: "Уже в первом фильтре адрес выглядит как http://mysite.com/user . (("  Получается, что пользователь посылает одно, а до моего кода это доходит уже в другом виде.

Как от этого избавиться на стороне сервера??

Автор: math64 2.4.2008, 14:43
Пользователь много чего может ввести чего Tomcat не воспримет. Обычно в таких случаях точка заменяется на %2E, пробел на %20 и т.д. а сервлет производит обратное преобразование.

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)