Server ( Get/http/1.1 Host:httpbln.org User-Agent:Httple/0.9.9 &n..."/>
您好,登錄后才能下訂單哦!
#HTTP client-server
Client————>Server
(
Get/http/1.1
Host:httpbln.org
User-Agent:Httple/0.9.9
Accept:*/*
)
Server————>Client
(
Http/1.1 200 OK
Content-Length:580
Content-Type:applcation/json
Date:Tue,25...
Connection:keep-alive
)
1.通過請求和響應(yīng)的交換達(dá)成通信
2.不保存通信狀態(tài)
3.使用URL定位互聯(lián)網(wǎng)上的資源
4.請求資源時(shí)使用方法下達(dá)命令(GET、POST、HEAD等)
5.通過持久鏈接節(jié)省通信量
6.使用cookie來進(jìn)行狀態(tài)管理
http請求報(bào)頭
1.第一行定義請求類型、文檔(選擇符)和協(xié)議版本
2.接著是報(bào)頭行,包括各種有關(guān)客戶端的信息
3.報(bào)頭行后面是一個(gè)空白行,表示報(bào)頭行結(jié)束
4.之后是 發(fā)送表單的信息或者上傳文件的事件中可能出現(xiàn)的數(shù)據(jù)
5.報(bào)頭的每一行都應(yīng)該使用回車符或者換行符('\r\n')終止——windows下
http響應(yīng)
1.第一行表示HTTP協(xié)議版本、成功代碼和返回消息
2.響應(yīng)行之后是一系列報(bào)頭字段,包含返回文檔的類型、文檔大小、Web服務(wù)器軟件、cookie等方面的信息
3.通過空白行結(jié)束報(bào)頭
4.之后是所請求文檔的原始數(shù)據(jù)
http常見請求方法
方法 | 描述 |
GET | 獲取文檔 |
POST | 將數(shù)據(jù)發(fā)布到表單 |
HEAD | 僅返回包頭信息 |
PUT | 將數(shù)據(jù)上傳到服務(wù)器 |
··· | ··· |
常見http狀態(tài)碼
成功代碼(2xx):200(成功) 201(創(chuàng)建) 202(接受) 204(無內(nèi)容)
重定向(3xx):300(多種選擇) 301(永久移動(dòng)) 302(可被303代替) 303(臨時(shí)移動(dòng)) 304(不修改)
客戶端錯(cuò)誤(4xx):400(請求錯(cuò)誤) 401(未授權(quán)) 403(禁止訪問) 404(未找到) 405(方法不允許)
服務(wù)器錯(cuò)誤(5xx):500(內(nèi)部服務(wù)器錯(cuò)誤) 501(未實(shí)現(xiàn)) 502(網(wǎng)關(guān)錯(cuò)誤) 503(服務(wù)不可用)
Python3 標(biāo)準(zhǔn)web庫
http:處理所有客戶端一服務(wù)器http請求的具體細(xì)節(jié)
client:處理客戶端部分
server:提懂了實(shí)現(xiàn)HTTP服務(wù)器的各種類
cookies:支持在服務(wù)器端處理HTTP cookie
cookiejar:支持在客戶端存儲(chǔ)和管理HTTP cookie
urllib:基于http的高層庫,用于編寫與HTTP服務(wù)器等交互的客戶端
request:處理客戶端請求
response:處理服務(wù)器端響應(yīng)
parse:用于操作URL字符串
Python Web框架
一個(gè)web框架,至少要具備處理客戶端請求和服務(wù)端相響應(yīng)的能力
路由:解析URL并找到對應(yīng)的服務(wù)端文件或者Python服務(wù)器代碼
模板:吧服務(wù)端數(shù)據(jù)合并成HTML頁面
認(rèn)證和授權(quán):處理用戶名。密碼和權(quán)限
Session:處理用戶在多次請求之間需要存儲(chǔ)的數(shù)據(jù)
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。