HTTP協(xié)議以ASCII碼傳輸塘辅,建立在TCP/IP協(xié)議之上。規(guī)范把HTTP協(xié)議請(qǐng)求分為三部分:狀態(tài)行轰驳、請(qǐng)求頭铣墨、消息主體
類似于:
<method> <request-URL> <version>
<headers><entity-body>
HTTP定義了與服務(wù)器交互的不同方法,最基本的有四種:GET嗽上、POST次舌、PUT、DELETE兽愤,分別對(duì)應(yīng)于針對(duì)這個(gè)資源的查彼念、增、改浅萧、刪操作国拇。
- GET請(qǐng)求可提交的數(shù)據(jù)量受到URL長(zhǎng)度的限制,HTTP協(xié)議規(guī)范沒有對(duì)URL長(zhǎng)度進(jìn)行限制惯殊,而是瀏覽器及服務(wù)器對(duì)它的限制
- 理論上,POST請(qǐng)求沒有大小限制也殖,出于安全考慮土思,服務(wù)器軟件在實(shí)現(xiàn)時(shí)可能會(huì)做一定限制
HTTP協(xié)議規(guī)定POST請(qǐng)求提交的數(shù)據(jù)必須在body部分中,POST提交數(shù)據(jù)方案忆嗜,包含Content-Type和消息主體編碼方式兩部分
- application/x-www-form-urlencoded
最常見的post提交數(shù)據(jù)方式己儒,瀏覽器的表單form,如果不設(shè)置enctype屬性捆毫,那么最終就是application/x-www-form-urlencoded方式提交闪湾。在body中的內(nèi)容,和在GET請(qǐng)求里的內(nèi)容相同 - multipart/form-data
一般用于文件上傳
現(xiàn)階段這兩種方式是瀏覽器原生支持的绩卤。
HTTP響應(yīng)報(bào)文與請(qǐng)求報(bào)文類似途样,也分為三個(gè)部分:狀態(tài)行,響應(yīng)頭濒憋、響應(yīng)主體