導航:首頁 > 編程語言 > java讀取瀏覽器cookie

java讀取瀏覽器cookie

發布時間:2025-06-05 11:55:22

① 怎麼在java中使用cookie

1、Cookie的來歷與作用
Cookie是WEB伺服器通過瀏覽器保存在WWW用戶端硬碟上的一個文本文件,這個文本文件中包含了文本信息。

文本信息的內容以「名/值」對(key/value)的形式進行存儲。

可以讓WEB開發者通過程序讀寫這個文本文件。

XP中保存Cookie的目錄是「C://Documents and Settings用戶名Cookies」

Cookie的作用

解決瀏覽器用戶與Web伺服器之間無狀態通信。

2Cookie編程
//創建對象

Date date = new Date() ;

Cookie c = new Cookie("lastVisited",date.toString()) ;

//設定有效時間 以s為單位

c.setMaxAge(60) ;

//設置Cookie路徑和域名

c.setPath("/") ;

c.setDomain(".zl.org") ; //域名要以「.」開頭

//發送Cookie文件

response.addCookie(c) ;

//讀取Cookie

Cookie cookies[] = request.getCookies() ;

Cookie c1 = null ;

if(cookies != null){

for(int i=0;i

c1 = cookies[i] ;

out.println("cookie name : " + c1.getName() + " ") ;

out.println("cookie value :" + c1.getValue() + "
");

}

}

//修改Cookie

Cookie cookies[] = request.getCookies() ;

Cookie c = null ;

for(int i=0;i

c = cookies[i] ;

if(c.getName().equals("lastVisited")){

c.setValue("2010-04-3-28") ;

c.setMaxAge(60*60*12) ;

response.addCookie(c) ; //修改後,要更新到瀏覽器中

}

}

//刪除Cookie,(將Cookie的有效時間設為0)

Cookie cookies[] = request.getCookies() ;

Cookie c = null ;

for(int i=0;i

c = cookies[i] ;

if(c.getName().equals("lastVisited")){

c.setMaxAge(0);

response.addCookie(c) ;

}

}

4、使用Cookie的注意事項
·Cookie的大小和數量是有限制的。

·Cookie在個人硬碟上所保存的文本信息是以明文格式進行保存的,沒有任何的加密措施。

·瀏覽器用戶可以設定不使用Cookie。

5、實例:Servlet中的Cookie編程
cookieInput.html頁面

SetCookie.java

GetCookie.java

cookieInput.html頁面中的參數提交到SetCookie.java中,由SetCookie.java保存在瀏覽器的Cookie中,在SerCookie.java中鏈接到GetCookie.java從而讀取剛剛保存的Cookie。

SetCookie.java :

public void doPost(HttpServletRequest request, HttpServletResponse response)

throws ServletException, IOException {

response.setContentType("text/html;charset=utf-8");

PrintWriter out = response.getWriter();

String username = request.getParameter("username") ;

//保存Cookie

if(username !=""){

Cookie c1 = new Cookie("username",username) ;

SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd") ;

Cookie c2 = new Cookie("lastVisited",sdf.format(new java.util.Date())) ;

c1.setMaxAge(60*60*60*12*30) ;

c2.setMaxAge(60*60*60*12*30) ;

response.addCookie(c1) ;

response.addCookie(c2) ;

out.println("Cookie保存成功!");

out.println("

") ;

out.println("讀取Cookie") ;

}else{

response.sendRedirect("../cookieInput.html") ;

}

out.flush();

out.close();

}
GetCookie.java:

public void doPost(HttpServletRequest request, HttpServletResponse response)

throws ServletException, IOException {

response.setContentType("text/html;charset=utf-8");

PrintWriter out = response.getWriter();

out.println("

");

out.println("");

out.println("

");

out.println("

");

//讀取Cookie

Cookie cookies[] = request.getCookies() ;

Cookie c = null ;

if(cookies != null){

for(int i=0;i

c = cookies[i] ;

if(c.getName().equals("username")){

out.println("用戶名: "+c.getValue());

out.println("
");

}

if(c.getName().equals("lastVisited")){

out.println("上次登錄的時間: "+c.getValue());

}

}

}else{

out.println("No cookie !");

}

out.println("

");

out.println("

");

out.flush();

out.close();

}


② 怎麼用java獲取cookie

ookie實際抄上是一個存在你硬碟里的數據,但是這些數據很特殊,只能由web應用提交給瀏覽器幫助存儲,並且我們還能讀取瀏覽器存在本地的cookie
web應用一般只在cookie中存儲一些用戶信息等少量且暫時的數據,數據量大則不適合存儲在cookies
ava通過httpServletRequest介面來訪問瀏覽器請求中的cookies數據(這里先了解一下cookies來龍去脈,代碼待會一並給出)
每個cookie有兩個屬性:鍵 ,值(無特定格式字元串,所以可以diy存數據,不過要注意URL編碼問題,編碼問題待會和代碼一同講)
如果我們需要存儲新的cookie我們可以new一個cookie實例 並通過httpservletRsponse提交到瀏覽器,進而存儲到本地

③ 在Java Web應用中讀寫Cookie詳解

瀏覽器與伺服器在處理請求和響應時,會在響應頭中傳遞業務數據,這種數據以Cookie的形式存在。Cookie允許伺服器識別客戶端,以便跟蹤其行為。圖1展示了瀏覽器與伺服器傳遞Cookie的過程。

圖1 瀏覽器與伺服器之間傳遞Cookie

在圖1中,伺服器向瀏覽器發送Cookie,瀏覽器保存後,再次請求時,會在請求頭中包含此Cookie。伺服器讀取並利用此信息,如圖2所示,類似兩個地下黨接頭,暗中傳遞信息。

圖2 Cookie就像暗中傳遞的接頭暗號

Servlet API提供了簡單介面用於Cookie的管理。通過`javax.servlet.http.Cookie`類可創建和訪問Cookie。設置和獲取Cookie信息見下。

創建Cookie示例:

設置Cookie有效期:

讀取客戶端Cookie:

利用Cookie追蹤客戶端訪問:

保存Cookie值需URL編碼:

讀取客戶端Cookie時,需進行URL解碼:

瀏覽器允許JavaScript訪問Cookie,通過`document.cookie`屬性實現。

④ Java中的Cookie的意思、用途!

cookie首先並不是java的概念,是web編程里一種客戶端存儲數據的方式(通常是加密過的)。

有些數據,不是特別重要,但用戶又經常要用到的,比如:網站用戶的登錄信息、歷史查看記錄等等,這些數據保存在伺服器上會讓伺服器承擔很大的壓力,因此變產生了cookie這樣一種客戶端數據存儲的方式。意思就是說把你個人的一些數據保存在本地,這樣伺服器減少了壓力,並且下次你訪問網站的時候,伺服器會主動去你的機器上讀取這些數據並展現出來。

比較常見的例子,有些網站登錄的時候會有一個「記住登錄狀態」的選擇,選了以後用戶以後再來這個網站會發現不用再登錄了,比如網路知道、貓撲等等;再比如最近優酷、騰訊視頻上的的歷史觀看記錄,不用登錄,就可以記錄你的機器上次看了哪些視頻,看到多少分多少秒了,下次來直接點就能接著看,特別實用~~~~ PS.我最近一直在用,哈哈

cookie雖然有諸多好處,但使用的過程中還是需要注意風險,因為客戶端的不確定性,對安全和隱私要求較高的數據建議還是不要放在cookie里存儲,比如網路游戲賬號密碼信息、電子銀行賬戶信息等等。

最後再說一個實例,當你清除瀏覽器緩存的時候,一般會有選擇是否清除cookie,或者360安全衛士幫助你清除上網痕跡的時候,都會把本地cookie清除掉,這時候你會發現,你很長時間都不用登錄的網站,比如網路知道、貓撲(原諒我經常上的網站就這倆,沒別的例子可舉- -!......),現在都需要重新登錄了,原因就是cookie被清除掉了

一字一句全是手打,望樓主採納~~

⑤ Java中的Cookie的意思和用途是什麼

cookie就是把一些來信息存放到瀏覽器能夠自讀取的到的地方,一般為ie的臨時目錄

可以通過js或者java來讀取自己域內的cookie信息

存放在cookie的好處是前後台都可以讀取,速度相對比較快

用途:一些不常改變的信息,可以保存在cookie里,這樣就可以減少讀取資料庫,降低資料庫的壓力

閱讀全文

與java讀取瀏覽器cookie相關的資料

熱點內容
linux怎麼看進程文件 瀏覽:986
qq飛車情侶貴族 瀏覽:315
42e700s系統升級 瀏覽:40
哪些app一定需要後台刷新 瀏覽:791
cad大理石填充圖案文件 瀏覽:301
iphone手機qq運動 瀏覽:718
jsp引入java類 瀏覽:864
qq日誌怎麼導入word文件 瀏覽:756
礦石菌種配置文件 瀏覽:330
羅技g刪除配置文件 瀏覽:305
華為matepadpro如何編程 瀏覽:245
劍網380小橙武升級 瀏覽:790
數據如何長保存系統相冊 瀏覽:277
北京哪裡有學機器人編程的學校 瀏覽:517
360手機壁紙在哪個文件夾里 瀏覽:792
傳奇怎麼提取地圖配置文件 瀏覽:495
如何讓壓縮文件zip小於50MB 瀏覽:968
文件夾突然不見了 瀏覽:124
qq防撤回xposed最新版 瀏覽:920
word替換圖形 瀏覽:914

友情鏈接