2011-12-06 13 views
5

Mam prostą aplikację Grails z następującym URI relaksującego ...Jak zdobyć URI żądania w Grails?

http://localhost:8080/kennis-api/funds/test/700 

Odwzorowanie w moich URIMappings jest

"/funds/test/$fcode" (controller: "fundCache"){ 
    action = [GET: "show"] 
} 

W moim kontrolera, trzeba wyodrębnić żądania URI, w tym przypadku "/ fundusze/test/700", ale wywołanie request.uri lub request.getRequestUri nie działa. Próbowałem za pomocą request.requestURL, ale to daje mi

http://localhost:8080/kennis-api/grails/fundCache/show.dispatch

Czy istnieje specjalna funkcja członkiem lub z którego można dostać URI żądania?

+0

mam go, nie intuicyjne, ale co tam ... „request.forwardURI” – raffian

+0

Właśnie znalazłem to. Całkowicie niezrozumiałe. Grails musi pod maską wykonywać jakieś cyrkowe sztuczki. –

Odpowiedz

6

Jest prosty, potrzebujesz adresu oryginalnego, który jest taki sam jak adres, na który twoja odpowiedź zostanie przesłana, po prostu zapisany w żądaniu i może zostać pobrany przez: .

String originalURI = request.forwardURI 
//Do this where request is available, ex: Controllers :) 
// Everywhere else you can use RequestContextHolder 

.
.
nadzieję, że pomoże Pozdrowienia Kushal

Powiązane problemy