У меня проблема с кодировкой косой черты в URL.Проблема с кодировкой косой черты в url
Проблема:
из запроса в GSP странице:
< A HREF = "http://foo.cz/myapp/page/show?url=home/gallery" > Галерея </а >
я получил:
http://foo.cz/myapp/page/show?url=home%2Fgallery
в адресной строке интернет-браузера.
Проблема с кодированным символом от "/" до "% 2F".
Объяснение:
это ссылка на мой GSP файле:
< A HREF = "http://foo.cz/myapp/page/show?url=home/gallery" > Галерея </>
после щелчка запрос идет к контроллеру:
def show ={
def page = Page.findByUrl(params.url) //it works
}
, тогда я получил страницу gsp в своем интернет-браузере. Все отлично работает, я получил нужную страницу, но в адрес строки в интернет-браузере Я видел:
http://foo.cz/myapp/page/show?url=home%2Fgallery
Существует не символ «/», но закодировать «% 2F»
Мотивация
Я хочу, чтобы установить URL в UrlMapping.groovy для:
"/${url}" (controller:"page", action:"show")
и получите:
http://foo.cz/myapp/home/gallery/
но есть проблема с кодированием символом "/".
Отделка
Помогите мне пожалуйста?
спасибо Том
в адресной строке вы всегда получите http://foo.cz/myapp/page/show?url=home%2Fgallery, потому что ваш браузер просто кодирует URL. Вы можете избежать этого, используя картографирование URL-адресов, поэтому http://foo.cz/myapp/home/gallery/ будет обычно передаваться в ваш контроллер (grails автоматически расшифровывает URL-адрес). – Oleksandr