一、http使用者識別的機制
1.承載使用者身份的http首部
2.客戶端ip位址跟蹤,根據客戶端ip位址進行識別
3.使用者登入,用認證方式識別使用者
4.胖url,一種在url中嵌入識別資訊的技術
5.cookie,一種持久身份識別技術
二、http首部
1.from
包含使用者的email位址
2.user_agent
將使用者所用瀏覽器的相關資訊告訴伺服器
3.referer
提供使用者**頁面的url,說明使用者之前訪問過哪些頁面
三、客戶端ip位址弊端
1.客戶端ip位址描述的是機器而非使用者,如果多個使用者共享同一臺計算機就無法識別
2.很多網際網路服務商會為使用者動態分配ip
3.很多使用者通過網路位址轉換(nat)防火牆來訪問網路內容
4.http**或閘道器會開啟新的到原始伺服器的tcp鏈結,web伺服器看到的將是**的
ip位址,而非客戶端
四、使用者登入
伺服器向瀏覽器回送乙個http401 login required的響應**,彈出登入框要求使用者登入,然後瀏覽器會新增乙個authorization首部提供使用者的登入資訊
弊端:每次登入乙個站點都需要輸入使用者名稱和密碼有點繁瑣
五、胖url
為使用者生成特別的url來追蹤使用者身份
六、cookie
1.cookie型別
會話cookie:一種臨時cookie,使用者退出瀏覽器後就被刪除持久cookie:儲存在硬碟上,用於維護使用者週期性訪問某個站點的配置檔案或登入名
會話cookie與持久cookie的區別是它們的過期時間
2.cookie是怎樣工作的?
伺服器給客戶端的乙個標識,客戶端瀏覽器將其儲存在瀏覽器的資料庫中,將來客戶端訪問同一站點時就會將cookie資訊加到請求首部中將其傳回去
3.cookie罐:客戶端狀態
cookie的基本思想就是讓瀏覽器記住伺服器的資訊,每次訪問伺服器時都將這些資訊提供 給他,故cookie又叫http狀態管理機制
4.不同站點使用不同的cookie
4.1 cookie的域屬性
控制哪些站點可以看到這個cookie
4.2 cookie的路徑屬性
在path這個屬性列出的url路徑字首下所有cookie都是有效的
5.cookie與快取
5.1 如果無法快取文件,要將其標記出來
5.2 快取set-cookie時要小心
響應中有set-cookie表示可以對主體進行快取,如果對多個使用者傳送相同的set-cookie,則破壞使用者定位
強制快取與原始伺服器重新驗證每條請求,並將返回的所有set-cookie都合併到客戶端的響應中去
5.3 小心才處理帶有cookie首部的請求
帶有cookie首部的請求一般是私有的,不能快取或者快取帶有cookie首部的,過期時間設定為0,強制每次都進行驗證
筆記 Go語言 http協議客戶端實現
func testhttpnewrequest 建立乙個client request,err http.newrequest get nil 建立乙個request,函式有三個引數 method 請求方法,url 請求url,body 可選引數 checkerr err 自定義函式,檢測錯誤 req...
用Socket類實現HTTP協議客戶端應用
用socket類實現http協議客戶端應用 梁穎健 liangyingjian 21cn.com responsecode integer.parseint message.substring mark 1,mark 4 responsemessage message.substring mark,...
用Socket類實現HTTP協議客戶端應用
用socket類實現http協議客戶端應用 梁穎健 liangyingjian 21cn.com responsecode integer.parseint message.substring mark 1,mark 4 responsemessage message.substring mark,...