瀏覽器禁用Cookie后的Session處理


1. 實現購物車, 可以基於Cookie, 也可以基於Session, 若服務器性能較差, 可以考慮基於Cookie實現購物車

2. 解決方案: URL重寫

把用戶可能點的每一個超鏈接后面,都跟上用戶的sessionid號

1) 對sendRedirect方法后的URL地址進行重寫

response.encodeRedircetURL(url);

2) 對表單或超鏈接的URL地址進行重寫

response.encodeURL(url);

3. 案例

1) 重寫超鏈接的URL地址

1 out.write("本網站有如下書:<br/>");
2 Set<Map.Entry<String,Book>> set = DB.getAll().entrySet();
3 for(Map.Entry<String,Book> me : set){
4     Book book = me.getValue();
5     String url = "/day07/servlet/BuyServlet?id=" + book.getId();
6     url = response.encodeURL(url);
7     out.println(book.getName()  + "   <a href='"+url+"'>購買</a><br/>");
8 }

2) 重寫sendRedirect方法的URL地址

1 HttpSession session = request.getSession();
2 String url = response.encodeRedirectURL("/day07/servlet/ListCartServlet");
3 response.sendRedirect(url);

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM