[英]How can I pass query string from one jsp page to another jsp page without showing the name-value pair at address bar?
我想將查詢字符串從一個jsp頁面發送到一個jsp頁面,但是當我發送查詢字符串時,我想在地址欄中隱藏名稱/值對(屬性)。
First.jsp
<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
pageEncoding="ISO-8859-1"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>First Page</title>
</head>
<body>
<a href="Second.jsp?username=aditya123&password=abc12345">Click Here</a>
</body>
</html>
Second.jsp
<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
pageEncoding="ISO-8859-1"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>Second Page</title>
</head>
<body>
<%
String username = request.getParameter("username");
String password = request.getParameter("password");
%>
Username : <%=username %><br/>
Password : <%=password %><br/>
</body>
</html>
在這里,我將查詢字符串"Second.jsp?username=aditya123&password=abc12345"
從First.jsp
頁傳遞到Second.jsp
頁,但是我想在不顯示用戶名和密碼屬性及其值的地址欄的情況下發送此查詢字符串"Second.jsp?username=aditya123&password=abc12345"
可能?
試試這個代碼
<form action="some.jsp" method="post">
<input type="text" name="uid" >
<input type="password" name="pass">
<input type="submit" name="login" >
</form>
添加方法=“ post”隱藏查詢字符串即,如果我刪除'method =“ post”',則按下提交按鈕時處理的url將具有以下查詢字符串
uid =“無論我在文本字段中寫什么”&pass =“”&login =“提交”
但是在寫完“ method =“ post”'之后,新的URL將沒有查詢字符串...!
鏈接是不可能的。 不顯示屬性的另一種解決方案是對該名稱值對進行編碼,然后使用url發送並在另一頁上進行解碼。
請使用Java提供的url編碼器,也可以使用您自己的crypto-decrypt方法。
最簡單的方法是<form action="some.jsp" method="post">
在html代碼中執行此格式設置。 url的內容將被隱藏...
通過使用session.setAttribute()方法將對象存儲在“會話”隱式對象中,可以存儲要傳遞給第二個jsp文件的所有對象/信息。 在第二頁中,您可以使用session.getAttribute()從“會話”對象中檢索那些對象。 我的假設是,兩個jsp頁面都在同一個HttpSession中執行,因此,兩個jsp頁面都可以使用相同的“ session”對象。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.