以前沒怎麼使用過cookie,昨天朋友準備使用cookie實現一個小功能,不過無論如何怎麼也取不到自定義的cookie,瀏覽器返回的只是JSESSIONID以及DWRSESSIONID。之後上網查詢資料,問題得以解決。
1.獲取cookie:
Cookie[] cookies = request.getCookie(); // 這裏的request是指HttpServletRequest
for(Cookie cookie : cookies)
....//執行操作
2.存儲cookie:
Cookie cookie = new Cookie(); // 生成一個cookie
// 對cookie進行賦值
cookie.setName("coder");
cookie.setValue("at work");
如果僅僅如上面的設置並且存儲cookie,這樣服務器端無法取到cookie(只能在特定的路徑下才能取到);
// 下面設置非常關鍵,比如說項目路徑爲:localhost:8080/coderatwork/
cookie.setPath("/coderatwork/"); //設置cookie訪問路徑,默認是請求路徑(如request訪問的路徑是:localhost:8080/coderatwork/php,那麼默認只能是該路徑才能訪問設置的cookie)
// cookie.setDomain(); 可以設置域名(域名以'.'開始,如www.rogeshu.com,那麼這裏參數爲:.rogeshu.com),域名可以爲其他網站的域名,你可以設置www.helloworld.com,那麼擁有www.helloworld.com的網站就能訪問該cookie
最後一步:存儲cookie
response.addCookie(cookie); // 使用response(HttpServletResponse)保存cookie
之後使用 步驟1 中的方法,便能夠得到自定義的cookie。
See You, Coders.....