您好,登錄后才能下訂單哦!
這篇文章主要介紹“Android中如何對cookie進行處理”的相關知識,小編通過實際案例向大家展示操作過程,操作方法簡單快捷,實用性強,希望這篇“Android中如何對cookie進行處理”文章能幫助大家解決問題。
android 客戶端 Cookie處理
Cookie,有時也用其復數形式Cookies,指某些網站為了辨別用戶身份、進行session跟蹤而儲存在用戶本地終端上的數據(通常經過加密)。
Cookie最早是網景公司的前雇員Lou Montulli在1993年3月的發明。
發起
Cookie是由服務器端生成,發送給User-Agent(一般是瀏覽器,客戶端),瀏覽器會將Cookie的key/value保存到某個目錄下的文本文件內,下次請求同一網站時就發送該Cookie給服務器(前提是瀏覽器設置為啟用cookie)。Cookie名稱和值可以由服務器端開發自己定義,對于JSP而言也可以直接寫入jsessionid,這樣服務器可以知道該用戶是否合法用戶以及是否需要重新登錄等。
用途
服務器可以利用Cookies包含信息的任意性來篩選并經常性維護這些信息,以判斷在HTTP傳輸中的狀態。Cookies最典型的應用是判定注冊用戶是否已經登錄網站,用戶可能會得到提示,是否在下一次進入此網站時保留用戶信息以便簡化登錄手續,這些都是Cookies的功用。另一個重要應用場合是“購物車”之類處理。用戶可能會在一段時間內在同一家網站的不同頁面中選擇不同的商品,這些信息都會寫入Cookies,以便在最后付款時提取信息。目前Cookies 最廣泛的是記錄用戶登錄信息,這樣下次訪問時可以不需要輸入自己的用戶名、密碼了——當然這種方便也存在用戶信息泄密的問題,尤其在多個用戶共用一臺電腦時很容易出現這樣的問題。
生存周期
Cookie可以保持登錄信息到用戶下次與服務器的會話,換句話說,下次訪問同一網站時,用戶會發現不必輸入用戶名和密碼就已經登錄了(當然,不排除用戶手工刪除Cookie)。而還有一些Cookie在用戶退出會話的時候就被刪除了,這樣可以有效保護個人隱私。
Cookie在生成時就會被指定一個Expire值,這就是Cookie的生存周期,在這個周期內Cookie有效,超出周期Cookie就會被清除。有些頁面將Cookie的生存周期設置為“0”或負值,這樣在關閉瀏覽器時,就馬上清除Cookie,不會記錄用戶信息,更加安全。
Android 中Cookie 的操作:
邏輯:Cookie是由服務器生成的。客戶端第一次向服務器發送Http請求時,由于沒有Cookie,在Http請求頭中即Header中不包含"Cookie"。此時在服務器返回的相應(HttpResponse)中會多一個字段"Set-Cookie",此字段的值就是服務器生成的Cookie值,下次再由此客戶端程序訪問該服務器時,就可以把該Cookie值放入Http請求頭中。服務器就會知道是哪個用戶再次訪問了該服務器。客戶端需要保存該Cookie以此用戶再次訪問服務器時使用。Cookie會有一個失效時間,客戶端在Cookie失效后再次訪問服務器,服務器會返回一個Cookie失效的狀態碼(比如403之類的),并在HttpResponse中包含"Set-Cookie"字段,這里面是新的Cookie。客戶端需要做的操作是:1.將新Cookie覆蓋舊的Cookie。2.跳入用戶登錄界面,讓用戶用新的Cookie重新登陸。Cookie 可以保存在SharePreferenced或者Sqlite中。
實現代碼:
public byte[] doPost(String url, List<NameValuePair> values){ HttpPost post = new HttpPost(url); post.setHeadr("Accept", ""); ... }
關于“Android中如何對cookie進行處理”的內容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業相關的知識,可以關注億速云行業資訊頻道,小編每天都會為大家更新不同的知識點。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。