Http协议(2)—客户端的识别与cookie机制
生活随笔
收集整理的這篇文章主要介紹了
Http协议(2)—客户端的识别与cookie机制
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
一、Http用戶識別的機制
1.承載用戶身份的http首部
2.客戶端IP地址跟蹤,根據(jù)客戶端IP地址進(jìn)行識別
3.用戶登錄,用認(rèn)證方式識別用戶
4.胖URL,一種在URL中嵌入識別信息的技術(shù)
5.cookie,一種持久身份識別技術(shù)
二、HTTP首部 1.From
包含用戶的Email地址
2.User_Agent
將用戶所用瀏覽器的相關(guān)信息告訴服務(wù)器
3.Referer
提供用戶來源頁面的URL,說明用戶之前訪問過哪些頁面
三、客戶端IP地址 弊端
1.客戶端IP地址描述的是機器而非用戶,如果多個用戶共享同一臺計算機就無法識別
2.很多因特網(wǎng)服務(wù)商會為用戶動態(tài)分配IP
3.很多用戶通過網(wǎng)絡(luò)地址轉(zhuǎn)換(NAT)防火墻來訪問網(wǎng)絡(luò)內(nèi)容
4.HTTP代理或網(wǎng)關(guān)會打開新的到原始服務(wù)器的TCP鏈接,Web服務(wù)器看到的將是代理的
IP地址,而非客戶端
四、用戶登錄 服務(wù)器向瀏覽器回送一個HTTP401 Login Required的響應(yīng)代碼,彈出登錄框要求用戶登錄,然后瀏覽器會添加一個Authorization首部提供用戶的登錄信息
弊端:
每次登錄一個站點都需要輸入用戶名和密碼有點繁瑣
五、胖URL 為用戶生成特別的URL來追蹤用戶身份
六、Cookie 1.Cookie類型
會話Cookie:一種臨時Cookie,用戶退出瀏覽器后就被刪除 持久Cookie:存儲在硬盤上,用于維護(hù)用戶周期性訪問某個站點的配置文件或登錄名 會話Cookie與持久Cookie的區(qū)別是它們的過期時間
2.Cookie是怎樣工作的? 服務(wù)器給客戶端的一個標(biāo)識,客戶端瀏覽器將其保存在瀏覽器的數(shù)據(jù)庫中,將來客戶端訪問同一站點時就會將Cookie信息加到請求首部中將其傳回去
3.Cookie罐:客戶端狀態(tài)
Cookie的基本思想就是讓瀏覽器記住服務(wù)器的信息,每次訪問服務(wù)器時都將這些信息提供????????? ? ??給他,故Cookie又叫HTTP狀態(tài)管理機制
4.不同站點使用不同的Cookie
4.1 Cookie的域?qū)傩?br /> 控制哪些站點可以看到這個Cookie
4.2 Cookie的路徑屬性
在path這個屬性列出的URL路徑前綴下所有Cookie都是有效的
5.Cookie與緩存
5.1 如果無法緩存文檔,要將其標(biāo)記出來
5.2 緩存set-cookie時要小心
響應(yīng)中有set-cookie表示可以對主體進(jìn)行緩存,如果對多個用戶發(fā)送相同的set-cookie,則破壞用戶定位 強制緩存與原始服務(wù)器重新驗證每條請求,并將返回的所有set-cookie都合并到客戶端的響應(yīng)中去
5.3 小心才處理帶有Cookie首部的請求
帶有Cookie首部的請求一般是私有的,不能緩存或者緩存帶有Cookie首部的圖片,過期時間設(shè)置為0,強制每次都進(jìn)行驗證
二、HTTP首部 1.From
包含用戶的Email地址
2.User_Agent
將用戶所用瀏覽器的相關(guān)信息告訴服務(wù)器
3.Referer
提供用戶來源頁面的URL,說明用戶之前訪問過哪些頁面
三、客戶端IP地址 弊端
1.客戶端IP地址描述的是機器而非用戶,如果多個用戶共享同一臺計算機就無法識別
2.很多因特網(wǎng)服務(wù)商會為用戶動態(tài)分配IP
3.很多用戶通過網(wǎng)絡(luò)地址轉(zhuǎn)換(NAT)防火墻來訪問網(wǎng)絡(luò)內(nèi)容
4.HTTP代理或網(wǎng)關(guān)會打開新的到原始服務(wù)器的TCP鏈接,Web服務(wù)器看到的將是代理的
IP地址,而非客戶端
四、用戶登錄 服務(wù)器向瀏覽器回送一個HTTP401 Login Required的響應(yīng)代碼,彈出登錄框要求用戶登錄,然后瀏覽器會添加一個Authorization首部提供用戶的登錄信息
弊端:
每次登錄一個站點都需要輸入用戶名和密碼有點繁瑣
五、胖URL 為用戶生成特別的URL來追蹤用戶身份
六、Cookie 1.Cookie類型
會話Cookie:一種臨時Cookie,用戶退出瀏覽器后就被刪除 持久Cookie:存儲在硬盤上,用于維護(hù)用戶周期性訪問某個站點的配置文件或登錄名 會話Cookie與持久Cookie的區(qū)別是它們的過期時間
2.Cookie是怎樣工作的? 服務(wù)器給客戶端的一個標(biāo)識,客戶端瀏覽器將其保存在瀏覽器的數(shù)據(jù)庫中,將來客戶端訪問同一站點時就會將Cookie信息加到請求首部中將其傳回去
3.Cookie罐:客戶端狀態(tài)
Cookie的基本思想就是讓瀏覽器記住服務(wù)器的信息,每次訪問服務(wù)器時都將這些信息提供????????? ? ??給他,故Cookie又叫HTTP狀態(tài)管理機制
4.不同站點使用不同的Cookie
4.1 Cookie的域?qū)傩?br /> 控制哪些站點可以看到這個Cookie
4.2 Cookie的路徑屬性
在path這個屬性列出的URL路徑前綴下所有Cookie都是有效的
5.Cookie與緩存
5.1 如果無法緩存文檔,要將其標(biāo)記出來
5.2 緩存set-cookie時要小心
響應(yīng)中有set-cookie表示可以對主體進(jìn)行緩存,如果對多個用戶發(fā)送相同的set-cookie,則破壞用戶定位 強制緩存與原始服務(wù)器重新驗證每條請求,并將返回的所有set-cookie都合并到客戶端的響應(yīng)中去
5.3 小心才處理帶有Cookie首部的請求
帶有Cookie首部的請求一般是私有的,不能緩存或者緩存帶有Cookie首部的圖片,過期時間設(shè)置為0,強制每次都進(jìn)行驗證
總結(jié)
以上是生活随笔為你收集整理的Http协议(2)—客户端的识别与cookie机制的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: java学习(87):Interage包
- 下一篇: Http协议(5)—HTTP摘要认证