2012-03-14 43 views
15

${requestScope['javax.servlet.forward.servlet_path']}獲取正確的字符串,但不包括可能在url中設置的參數。JSTL - 打印當前網址,包括查詢字符串

例子:

http://localhost/path/i/want?param=1應該給我一個字符串/path/i/want?param=1

我有一種感覺,這應該是很容易做到,但不能弄明白。

在此先感謝!

回答

16

它可通過${requestScope['javax.servlet.forward.query_string']}

+0

不是我(想到我)正在尋找的,而是我所追求的。謝謝。 – thonnor 2017-07-24 11:30:39

6

我一直在尋找一段時間。

<c:set var="req" value="${pageContext.request}" /> 
<c:set var="baseURL" value="${fn:replace(req.requestURL, req.requestURI, '')}" /> 
<c:set var="params" value="${requestScope['javax.servlet.forward.query_string']}"/> 
<c:set var="requestPath" value="${requestScope['javax.servlet.forward.request_uri']}"/> 
<c:set var="pageUrl" value="${ baseURL }${ requestPath }${ not empty params?'?'+=params:'' }"/> 
+0

感謝朋友!!! – 2017-05-31 19:40:20

相關問題