我的隐藏参数方法使用 response.sendRedirect().. 可以吗?
My method for hidden parameters using response.sendRedirect().. is it ok?
我需要使用response.sendRedirect传递隐藏参数(在某些情况下我不想使用转发)。
因为我不想使用像 ?par1=val1&par2=val2& 这样的 GET 参数,...我正在使用这样的会话对象:
session.setAttribute("error_message", "Error: e-mail is null");
response.sendRedirect(targetURL);
并且在加载 "targetURL" 时(它将是一个 JSP 文件),我读取该值然后删除该会话属性:
if(session.getAttribute("error_message") != null) {%>
<h4><%=session.getAttribute("error_message").toString()%></h4> <%
session.removeAttribute("error_message");
}
%>
您认为这是 reasonable/reliable 一种满足我需要的方式吗?对性能不好吗?你怎么看待这件事?坚持下去还是敲打那个代码?
谢谢!
在你的情况下使用session是可以的。
您需要记住的是,会话不是线程安全的,一旦同一浏览器中的另一个选项卡 window 删除该属性,用户就会收到错误消息。
性能还不错。
如果您不想通过 URL 传递数据并且您正在使用 response.sendRedirect()
,那么会话范围对您来说是一个不错的选择。
我需要使用response.sendRedirect传递隐藏参数(在某些情况下我不想使用转发)。
因为我不想使用像 ?par1=val1&par2=val2& 这样的 GET 参数,...我正在使用这样的会话对象:
session.setAttribute("error_message", "Error: e-mail is null");
response.sendRedirect(targetURL);
并且在加载 "targetURL" 时(它将是一个 JSP 文件),我读取该值然后删除该会话属性:
if(session.getAttribute("error_message") != null) {%>
<h4><%=session.getAttribute("error_message").toString()%></h4> <%
session.removeAttribute("error_message");
}
%>
您认为这是 reasonable/reliable 一种满足我需要的方式吗?对性能不好吗?你怎么看待这件事?坚持下去还是敲打那个代码?
谢谢!
在你的情况下使用session是可以的。 您需要记住的是,会话不是线程安全的,一旦同一浏览器中的另一个选项卡 window 删除该属性,用户就会收到错误消息。
性能还不错。
如果您不想通过 URL 传递数据并且您正在使用 response.sendRedirect()
,那么会话范围对您来说是一个不错的选择。