您好,登錄后才能下訂單哦!
本篇文章給大家分享的是有關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進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。