08-12
05
response.encodeRedirectURL作用
作者:Java伴侣 日期:2008-12-05
Session在使用的过程中是需要SessionID来获取的。而这个SessionID是存放在客户端的cookie中。那么假如你的浏览器关闭了cookie功能的话将不能使用Session。解决的办法就是通过URL重写。
URL重写功能其实就是对URL进行一个编码加密,客户端看不到真实的URL。而且它还有一个重要的功能就是每次进行完URL重写之后都会将SessionID放置到URL中。这样每次服务器在获取相应的Session时需要的SessionID可以从URL中找到。而且URL还进行了加密,增强了安全性。
<a href="www.bug.com/admin/info.jsp">Info List</a> 改为:
<a href="<%=response.encodeRedirectURL("www.bug.com/admin/info.jsp")%>">Info List</a>
又如:
response.sendRedirect("www.bug.com/admin/info.jsp") 改为:
response.sendRedirct(response.encodeRedirectURL("www.bug.com/admin/info.jsp"))
response.endcodeRedirectURL()是把?后的汉字转换成特殊的字符
response.sendRedirect()是直接传递的汉字
如:http://search.jsp?searchKeys=%BC%BC%C7%C9%CC%E1%CA%BE&id=28&author=aa
http://search.jsp?searchKeys=技术文章&id=28&author=aa
URL重写功能其实就是对URL进行一个编码加密,客户端看不到真实的URL。而且它还有一个重要的功能就是每次进行完URL重写之后都会将SessionID放置到URL中。这样每次服务器在获取相应的Session时需要的SessionID可以从URL中找到。而且URL还进行了加密,增强了安全性。
<a href="www.bug.com/admin/info.jsp">Info List</a> 改为:
<a href="<%=response.encodeRedirectURL("www.bug.com/admin/info.jsp")%>">Info List</a>
又如:
response.sendRedirect("www.bug.com/admin/info.jsp") 改为:
response.sendRedirct(response.encodeRedirectURL("www.bug.com/admin/info.jsp"))
response.endcodeRedirectURL()是把?后的汉字转换成特殊的字符
response.sendRedirect()是直接传递的汉字
如:http://search.jsp?searchKeys=%BC%BC%C7%C9%CC%E1%CA%BE&id=28&author=aa
http://search.jsp?searchKeys=技术文章&id=28&author=aa
评论: 0 | 引用: 0 | 查看次数: 841
发表评论