會話技術(shù)、Cookie的API
會話技術(shù):用戶開一個瀏覽器涯保,訪問一個網(wǎng)站,只要不關(guān)閉該瀏覽器诉濒,不管該用戶點(diǎn)擊多少個超鏈接,訪問多少資源夕春,直到用戶關(guān)閉瀏覽器未荒,整個這個過程我們稱為一次會話。
使用會話技術(shù)做什么
1及志、在論壇登陸的時候片排,很多時候會有一個小框框問你是否要自動登陸,當(dāng)你下次登陸的時候就不用輸入密碼了速侈。
2率寡、根據(jù)我以前瀏覽過的商品,猜我喜歡什么商品锌畸。
Cookie
會話跟蹤技術(shù)有Cookie和Session勇劣,Cookie技術(shù)是先出現(xiàn)的。
Cookie技術(shù):
網(wǎng)頁之間的交互是通過HTTP協(xié)議傳輸數(shù)據(jù)的潭枣,而Http協(xié)議是無狀態(tài)的協(xié)議比默。無狀態(tài)的協(xié)議是什么意思呢?一旦數(shù)據(jù)提交完后盆犁,瀏覽器和服務(wù)器的連接就會關(guān)閉命咐,再次交互的時候需要重新建立新的連接。
服務(wù)器無法確認(rèn)用戶的信息谐岁,于是乎醋奠,W3C就提出了:給每一個用戶都發(fā)一個通行證,無論誰訪問的時候都需要攜帶通行證伊佃,這樣服務(wù)器就可以從通行證上確認(rèn)用戶的信息窜司。通行證就是Cookie。
Cookie的流程:瀏覽器訪問服務(wù)器航揉,如果服務(wù)器需要記錄該用戶的狀態(tài)塞祈,就使用response向?yàn)g覽器發(fā)送一個Cookie,瀏覽器會把Cookie保存起來帅涂。當(dāng)瀏覽器再次訪問服務(wù)器的時候议薪,瀏覽器會把請求的網(wǎng)址連同Cookie一同交給服務(wù)器。
Cookie API
Cookie類用于創(chuàng)建一個Cookie對象
response接口中定義了一個addCookie方法媳友,它用于在其響應(yīng)頭中增加一個相應(yīng)的SetCookie頭字段
request接口中定義了一個getCookies方法斯议,它用于獲取客戶端提交的Cookie
常用的Cookie方法:
public Cookie(String name,String value)
setValue與getValue方法
setMaxAge與getMaxAge方法
setPath與getPath方法
setDomain與getDomain方法
getName方法
簡單使用Cookie
public?class?CookieTest?extends?HttpServlet?{
????@Override
????protected?void?doGet(HttpServletRequest?req,?HttpServletResponse?resp)?throws?ServletException,?IOException?{
????????//設(shè)置response編碼
????????resp.setContentType("text/html;charset=UTF-8");
????????//創(chuàng)建Cookie對象
????????Cookie?cookie?=?new?Cookie("username","jiuyue");
????????//發(fā)送Cookie給瀏覽器需要設(shè)置Cookie的時間
????????cookie.setMaxAge(1000);
????????//向?yàn)g覽器發(fā)送一個cookie
????????resp.addCookie(cookie);
????????resp.getWriter().write("向?yàn)g覽器發(fā)送了一個Cookie");
????}
"歡迎關(guān)注我的公眾號"