• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>

            woaidongmao

            文章均收錄自他人博客,但不喜標(biāo)題前加-[轉(zhuǎn)貼],因其丑陋,見諒!~
            隨筆 - 1469, 文章 - 0, 評(píng)論 - 661, 引用 - 0
            數(shù)據(jù)加載中……

            HTTP協(xié)議相關(guān)概述

            HTTP協(xié)議被設(shè)計(jì)得非常強(qiáng)大,但很多網(wǎng)絡(luò)應(yīng)用都沒有利用這些強(qiáng)大之處。比如緩存和HTTP方法。HTTP為資源的增刪改查分別提供了 PUT,DELETE,POST,GET等方法,確沒有人用。所以,最近興起的Restful只是對(duì)優(yōu)化web架構(gòu)、充分利用HTTP協(xié)議的能力的一個(gè)回 歸。下面是一些HTTP協(xié)議的概述:

             

            消息:HTTP協(xié)議中頂級(jí)數(shù)據(jù)單位,使用HTTP協(xié)議通信的機(jī)器之間來回發(fā)送的數(shù)據(jù)包

             

            實(shí)體:只出現(xiàn)在有消息體的消息中。它按照實(shí)體header定義的格式和編碼進(jìn)行傳輸。

             

            方法:

            OPTIONS :客戶端查詢服務(wù)器對(duì)與某URL允許的通信選項(xiàng)

            GET :從服務(wù)器獲取URL對(duì)應(yīng)的資源

            HEAD :除了服務(wù)器響應(yīng)中不能包含消息體,該方法與GET一樣。用于只需少數(shù)元信息的情況

            POST :被設(shè)計(jì)用來注解、修改URL所對(duì)應(yīng)的資源

            PUT :被設(shè)計(jì)用來修改或創(chuàng)建資源。當(dāng)URL對(duì)應(yīng)的資源存在時(shí),則提交的作為新版本,否則新建資源

            DELETE :被設(shè)計(jì)用來刪除URL對(duì)應(yīng)的資源

            TRACE :主要用來測(cè)試。服務(wù)器將最終接收到的請(qǐng)求本身發(fā)送回來,作為客戶端診斷依據(jù)

            CONNECT :保留的方法名,用于代理切換隧道

             

            header特殊參數(shù):

            q :在大多的各種header值中,都可以看到一個(gè)名為q=0.2q=0.7之類的參數(shù)。因?yàn)榘l(fā)送header主要是一個(gè)和服務(wù)器的協(xié)商過程,所以能允許的選項(xiàng)一般不只一個(gè),但具體哪個(gè)優(yōu)先呢?這就需要為一些選項(xiàng)制定權(quán)重值。q參數(shù)的值是一個(gè)從01的浮點(diǎn)數(shù),默認(rèn)是1,為0表示客戶端無法接收,小數(shù)點(diǎn)后 不能超過3位。另外,header的多個(gè)值之間用逗號(hào)分隔而不是分號(hào)。比如這個(gè)headerAccept:audio/*;q=0.2,audio /basic,這表示客戶端告訴服務(wù)器“我最喜歡的是一個(gè)audio/basic類型的音頻(因?yàn)樗鼪]有設(shè)置q參數(shù),默認(rèn)是1),但如果沒有,給我一個(gè)任 意類型(audio/*)的音頻也行”。當(dāng)然,這只是q參數(shù)一個(gè)比較簡單的應(yīng)用。

             

            常規(guī)header

            Cache-Control :用于指出請(qǐng)求/響應(yīng)鏈上所有緩存必須服從的指令,它必須具有穿透各代理和網(wǎng)關(guān)的能力。HTTP1.0可能不支持該headerPragmano-cache

            Connection :允許客戶端指出希望特定連接的選項(xiàng),且禁止由代理在將來的連接中通訊

            Date :表示消息發(fā)生的日期和時(shí)間,與RFC 822中的orig-date語義一致

            Pragma :用來包括實(shí)現(xiàn)特定的指令,可能應(yīng)用到請(qǐng)求/響應(yīng)鏈上所有接收方  

            Trailer :指出給出的頭部域集合在以chunked transfer-coding編碼的消息的尾部中存在

            Transfer-Encoding :指出應(yīng)用什么類型的轉(zhuǎn)換到消息主體上,與content-coding不同,這不是指定實(shí)體的屬性而是消息的

            Upgrade :允許客戶端指出其支持的其他通訊協(xié)議,切愿意使用之,若服務(wù)器發(fā)現(xiàn)切換是可行的,必須在響應(yīng)中回101

            Via :必須由網(wǎng)關(guān)或代理來指出請(qǐng)求中的UA和服務(wù)器、以及在響應(yīng)中的原始服務(wù)器和客戶端的中間協(xié)議和接收方。用于跟蹤消息轉(zhuǎn)發(fā),避免請(qǐng)求循環(huán)

            Warning :用戶攜帶關(guān)于消息的狀態(tài)和轉(zhuǎn)換的額外信息,可能不在消息中反映。一般用于警告應(yīng)用到消息實(shí)體上的緩存操作或轉(zhuǎn)換缺少語義透明度

             

             

            請(qǐng)求header

            Accept :客戶端指出響應(yīng)可以接受的媒體類型             

            Accept-Charset :客戶端指出響應(yīng)可以接受的字符集

            Accept-Encoding :客戶端指出響應(yīng)可以接受的字符編碼

            Accept-Language :客戶端指出允許的語言     

            Authorization :客戶端在受到401后,需要向服務(wù)器標(biāo)明身份,包括此header即可      

            Expect : 客戶端指出要求的特殊服務(wù)器行為。若服務(wù)器無法滿足,可以返回417            

            From :               

            Host : 客戶端指出要請(qǐng)求的資源的因特網(wǎng)主機(jī)和端口號(hào)              

            If-Match : 用于與方法一起使其條件化          

            If-Modified-Since : 用于方法使其條件化,如果請(qǐng)求的變量在本域指定的時(shí)間從來不曾修改過,則實(shí)體將不會(huì)從服務(wù)器返回,改為304

            If-None-Match : 用于與方法一起使其條件化     

            If-Range : 用于與方法一起使其條件化          

            If-Unmodified-Since : 用于與方法一起使其條件化,如果請(qǐng)求的資源自header值時(shí)間以來未改變,則服務(wù)器執(zhí)行該請(qǐng)求

            Max-Forwards : 提供某種機(jī)制,TRACEOPTIONS方法用來限制可以轉(zhuǎn)發(fā)給下個(gè)入界服務(wù)器代理或網(wǎng)關(guān)的數(shù)量,相當(dāng)于客戶端跟蹤請(qǐng)求鏈      

            Proxy-Authorization : 允許客戶端向代理標(biāo)識(shí)自己,該代理需要認(rèn)證

            Range : 字節(jié)范圍,可以指定單個(gè)實(shí)體中單個(gè)字節(jié)范圍或范圍集             

            Referer : 允許服務(wù)器為感興趣的資源、日志、優(yōu)化緩存等生成向后鏈接清單           

            TE : 指出愿意在響應(yīng)中接受任何擴(kuò)展的transfer-coding                

            User-Agent : 包含發(fā)起請(qǐng)求的用戶代理(瀏覽器和OS)的信息

             

             

            響應(yīng)header

            Accept-Ranges :服務(wù)器指出對(duì)請(qǐng)求的資源可接受的范圍,可以是字節(jié)數(shù)或none      

            Age HTTP使用改header來傳輸從緩存服務(wù)器獲取時(shí)的響應(yīng)消息的估計(jì)年齡,是緩存服務(wù)器估計(jì)從響應(yīng)產(chǎn)生或被原始服務(wù)器重新證實(shí)以來的總時(shí)間          

            ETag :提供所請(qǐng)求的實(shí)體標(biāo)簽的當(dāng)前值              

            Location :用來重定向接收

             

            方到非URI的位置來完成請(qǐng)求。對(duì)于201Location是由請(qǐng)求創(chuàng)建的新資源的標(biāo)識(shí)          

            Proxy-Authenticate :該header必須作為407響應(yīng)的一部分,指出認(rèn)證方案和可應(yīng)用到代理的URI上的參數(shù)

            Retry-After :能與503響應(yīng)一起用于指出希望該服務(wù)對(duì)客戶端可以維持多久,       

            Server :指出服務(wù)器使用的軟件信息            

            Vary               

            WWW-Authenticate :必須包括在401中,值至少有challenge組成,它指出認(rèn)證方案和可應(yīng)用到URI的參數(shù)  

             

            實(shí)體header

            Allow :客戶端指出對(duì)URI的資源允許的方法              

            Content-Encoding : 用作對(duì)media-type的修飾符,其值將必須應(yīng)用到實(shí)體body上的額外內(nèi)容編碼。主要用來允許壓縮而不丟失下層媒體類型標(biāo)識(shí)  

            Content-Language : 客戶端指出自己所選的語言,指出目標(biāo)觀眾對(duì)所封裝實(shí)體的自然語言。這可能與實(shí)體body內(nèi)所有語言相同  

            Content-Length :指出實(shí)體body按十進(jìn)制數(shù)的字節(jié)流的尺寸     

            Content-Location :如果實(shí)體能從獨(dú)立于請(qǐng)求URI的位置訪問,則服務(wù)器可以提供該實(shí)體自己的位置   

            Content-MD5 :是實(shí)體bodyMD5摘要,以便提供端到端的完整性檢查        

            Content-Range :與實(shí)體body的一部分一起發(fā)送,用來指定該部分body應(yīng)用到全部body的哪個(gè)地方      

            Content-Type :指出發(fā)送給接收方的實(shí)體body的媒體類型,媒體類型參見IANA       

            Expires :指出響應(yīng)被認(rèn)為過期的日期/時(shí)間            

            Last-Modified :指出原始服務(wù)器認(rèn)為該變量最后修改的日期和時(shí)間,確實(shí)意思取決于原是服務(wù)器的實(shí)現(xiàn)和資源的屬性。對(duì)文件,可能只是文件系統(tǒng)內(nèi)最后修改時(shí)間

            extension-header

             

            狀態(tài)碼:

            100 : Continue

            101 : Switching Protocols

            200 : OK

            201 : Created

            202 : Accepted

            203 : Non-Authoritative Information

            204 : No Content

            205 : Reset Content

            206 : Partial Content

            300 : Multiple Choices

            301 : Moved Permanently

            302 : Found

            303 : See Other

            304 : Not Modified

            305 : Use Proxy

            307 : Temporary Redirect

            400 : Bad Request

            401 : Unauthorized

            402 : Payment Required

            403 : Forbidden

            404 : Not Found

            405 : Method Not Allowed

            406 : Not Acceptable

            407 : Proxy Authentication Required

            408 : Request Time-out

            409 : Conflict

            410 : Gone

            411 : Length Required

            412 : Precondition Failed

            413 : Request Entity Too Large

            414 : Request-URI Too Large

            415 : Unsupported Media Type

            416 : Requested range not satisfiable

            417 : Expectation Failed

            500 : Internal Server Error

            501 : Not Implemented

            502 : Bad Gateway

            503 : Service Unavailable

            504 : Gateway Time-out

            505 : HTTP Version not supported

            extension-code

             

            關(guān)鍵字:HTTP

             

            posted on 2009-09-04 14:09 肥仔 閱讀(509) 評(píng)論(0)  編輯 收藏 引用 所屬分類: HTTP & URL

            精品久久一区二区三区| 伊人久久大香线蕉综合5g| 亚洲av伊人久久综合密臀性色 | 性做久久久久久久久浪潮| 精品久久久久久久久久中文字幕| 久久久WWW成人免费毛片| 久久青青草视频| 91精品国产91久久久久福利| 国产精品成人无码久久久久久| 亚洲精品99久久久久中文字幕| 日日噜噜夜夜狠狠久久丁香五月| 国产精品久久久久久福利漫画| 人妻丰满?V无码久久不卡| 久久亚洲精品成人av无码网站| 久久久WWW成人免费毛片| 97久久久久人妻精品专区 | 国产色综合久久无码有码| 久久w5ww成w人免费| 久久人人爽人爽人人爽av| 国产精品久久久久AV福利动漫| 欧美久久综合九色综合| 69SEX久久精品国产麻豆| 久久综合九色综合网站| 亚洲欧美成人久久综合中文网 | 日韩精品无码久久一区二区三| www性久久久com| 青草国产精品久久久久久| 亚州日韩精品专区久久久| 国产精品成人久久久久三级午夜电影| 久久综合给合久久国产免费| 亚洲精品视频久久久| 久久99亚洲综合精品首页| 久久久精品免费国产四虎| 久久精品中文字幕大胸| 一本大道久久香蕉成人网| 久久天天躁狠狠躁夜夜2020老熟妇| 久久精品国产免费一区| 国产精品天天影视久久综合网| 精品久久久久香蕉网| 久久人人爽人人爽人人片AV不| 少妇久久久久久被弄高潮|