我將Display.jsp
的請求發送到TrialShow.jsp頁面,但是每當我在TrialShow JSP頁面中調用${pageContext.request.requestURL}
,我都會得到http://localhost:8081/newjsp1/TrialShow.jsp
作爲輸出。如何在TrialShow JSP頁面中顯示http://localhost:8081/newjsp1/Display.jsp
?如何獲取客戶端的url
回答
所以你想要一個完整的HTTP請求調用當前頁面的頁面的URL?我認爲沒有前進的方法,因爲你通常不會使用JSP(因爲它可能會產生IllegalStateException: Response already committed
),而且對於一個前鋒,你的需求會按照你想要的方式工作。
最簡單的方法和最好的辦法是獲取HTTP Referer
標題(是的,包括傳說中的錯字)。你可以在EL中得到它如下:
${header.referer}
我說「最好的選擇」,因爲客戶端不需要填寫引用標題。大多數瀏覽器都會發送它們,但請記住,這個值可以完全由客戶端控制,因此客戶端(或任何客戶端安裝的軟件,以某些特定的Norton軟件爲例)可以欺騙甚至完全刪除標題值。
一個更可靠的方法是讓原始頁面將其URL作爲(隱藏)請求參數傳遞。例如。
<input type="hidden" name="from" value="${pageContext.request.requestURI}">
這種方式是在接下來的頁面訪問由
${param.from}
我說,「位」,因爲客戶端仍然可以改變它,但現在你不依賴於客戶端的特定環境了。您仍需要記住,您不應將此值用於商業用途。最高可用於統計或調試。
使用${requestScope['javax.servlet.forward.request_uri']}
編輯:糾正語法
編輯:這工作,如果你轉發請求到第二個JSP(例如,使用<jsp:forward .../>
)
我不認爲這裏有任何前鋒的手段。它是JSP - > JSP,而不是JSP - > Servlet - > JSP。如果實際上有一種轉發方式,您可以在請求URL中看到「Display.jsp」的URL! – BalusC 2010-01-18 22:13:12
- 1. ColdFusion獲取客戶端URL
- 2. 從WCF獲取客戶端URL
- 3. 如何從WCF服務獲取客戶端的URL?
- 4. 如何獲取客戶端使用的URL
- 5. 如何從傳統ASP請求獲取* actual *客戶端URL?
- 6. 如何從ServiceStack Service基類獲取客戶端調用URL?
- 7. 如何獲取AWS IOT客戶端ID?
- 8. 如何在客戶端獲取提醒
- 9. 如何獲取圖像到客戶端?
- 10. 如何獲取客戶端IP地址
- 11. 如何獲取客戶端IP地址
- 12. 如何在客戶端獲取Tomcat JSESSIONID?
- 13. 如何獲取客戶端編碼?
- 14. 獲取遠程客戶端
- 15. DARTlang獲取客戶端IP
- 16. ServerSocket +客戶端套接字 - 如何獲取客戶端的IP地址?
- 17. 使用HTTP客戶端的Java 4.5客戶端獲取語句
- 18. 從HP TRIM的桌面客戶端獲取記錄的URL
- 19. 如何獲取rmi中客戶端的端口號?
- 20. 如何獲取RequestHandler中的客戶端端口?
- 21. 如何在Youtube API for iOS客戶端中獲取客戶端密鑰?
- 22. 如何在OAuth2中從MVC5獲取客戶端ID和客戶端密鑰?
- 23. 通過window.location對象獲取SockJS客戶端的URL
- 24. 獲取點擊事件的目標URL - 客戶端
- 25. 如何獲取用戶的套接字客戶端?
- 26. 如何獲取客戶端/用戶的IP地址?
- 27. 從Sharepoint客戶端獲取weburl客戶端對象模型
- 28. c#獲取客戶端用戶名
- 29. 如何從服務器端代碼獲取客戶端timeZoneOffset
- 30. 如何在php中獲取客戶端ip地址和端口?
謝謝主席先生非常多的你的幫助。 – Dusk 2010-01-18 22:21:45
不客氣。 – BalusC 2010-01-18 22:22:10