<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    隨筆-128  評論-55  文章-5  trackbacks-0

    http頭的組成:   
    ==============   
     HTTP頭字段包括4類:    
         general-header ;   
         request-header ;   
         response-header ;   
         entity-header .   
        
    *******************************************************************************   
     General Header Fields   
    =============================   
       general header是request、response都可用的, 但是不能用于entity.    
        
        
           -- Cache-Control   
           -- Connection   
           -- Date   
           -- Pragma   
           -- Trailer   
           -- Transfer-Encoding   
           -- Upgrade   
           -- Via   
           -- Warning   
        
    *******************************************************************************   
     Request Header Fields   
    ======================   
        
       request-header fields 允許客戶端傳遞關(guān)于request和客戶端的附加信息到服務(wù)端,   
        
           -- Accept   
           -- Accept-Charset   
           -- Accept-Encoding   
           -- Accept-Language   
           -- Authorization   
           -- Expect   
           -- From   
           -- Host   
           -- If-Match   
           -- If-Modified-Since   
           -- If-None-Match   
           -- If-Range   
           -- If-Unmodified-Since   
           -- Max-Forwards   
           -- Proxy-Authorization   
           -- Range    
           -- Referer   
           -- TE   
           -- User-Agent   
        
    *******************************************************************************   
      Response Header Fields   
    ===============================   
        
       response-header fields 允許服務(wù)端傳遞關(guān)于response的、不能放到Status-Line的附加信息。   
       這些頭給出關(guān)于服務(wù)端的信息。      
        
          -- Accept-Ranges   
          -- Age   
          -- ETag   
          -- Location    
          -- Proxy-Authenticate   
          -- Retry-After   
          -- Server   
          -- Vary    
          -- WWW-Authenticate   
        
    *******************************************************************************   
     Entity Header Fields   
    ========================   
        
       Entity-header fields 定義關(guān)于entity-body的metainformation(標(biāo)題字段數(shù)據(jù)),   
       如果當(dāng)前沒有body, 則定義被request確定的資源信息.   
       一些metainformation是可選的; 一些是必須的。   
        
           -- Allow   
           -- Content-Encoding   
           -- Content-Language   
           -- Content-Length   
           -- Content-Location   
           -- Content-MD5   
           -- Content-Range   
           -- Content-Type   
           -- Expires   
           -- Last-Modified   
           -- extension-header   
       
       
    【轉(zhuǎn)自】http://www.x5dj.com/userforum/00100239/00305167.shtml   
       
       
    一、基礎(chǔ)篇   
    HTTP(HyperTextTransferProtocol)是超文本傳輸協(xié)議的縮寫,它用于傳送WWW方式的數(shù)據(jù),關(guān)于HTTP協(xié)議的詳細內(nèi)容請參考RFC2616。HTTP協(xié)議采用了請求/響應(yīng)模型??蛻舳讼蚍?wù)器發(fā)送一個請求,請求頭包含請求的方法、URI、協(xié)議版本、以及包含請求修飾符、客戶信息和內(nèi)容的類似于MIME的消息結(jié)構(gòu)。服務(wù)器以一個狀態(tài)行作為響應(yīng),相應(yīng)的內(nèi)容包括消息協(xié)議的版本,成功或者錯誤編碼加上包含服務(wù)器信息、實體元信息以及可能的實體內(nèi)容。   
    通常HTTP消息包括客戶機向服務(wù)器的請求消息和服務(wù)器向客戶機的響應(yīng)消息。這兩種類型的消息由一個起始行,一個或者多個頭域,一個只是頭域結(jié)束的空行和可選的消息體組成。HTTP的頭域包括通用頭,請求頭,響應(yīng)頭和實體頭四個部分。每個頭域由一個域名,冒號(:)和域值三部分組成。域名是大小寫無關(guān)的,域值前可以添加任何數(shù)量的空格符,頭域可以被擴展為多行,在每行開始處,使用至少一個空格或制表符。   
       
    1、通用頭域   
    通用頭域包含請求和響應(yīng)消息都支持的頭域,通用頭域包含Cache-Control、Connection、Date、Pragma、Transfer-Encoding、Upgrade、Via。對通用頭域的擴展要求通訊雙方都支持此擴展,如果存在不支持的通用頭域,一般將會作為實體頭域處理。下面簡單介紹幾個在UPnP消息中使用的通用頭域。   
    Cache-Control頭域   
    Cache-Control指定請求和響應(yīng)遵循的緩存機制。在請求消息或響應(yīng)消息中設(shè)置Cache-Control并不會修改另一個消息處理過程中的緩存處理過程。請求時的緩存指令包括no-cache、no- store、max-age、max-stale、min-fresh、only-if-cached,響應(yīng)消息中的指令包括public、 private、no-cache、no-store、no-transform、must-revalidate、proxy-revalidate、 max-age。各個消息中的指令含義如下:   
    Public指示響應(yīng)可被任何緩存區(qū)緩存。   
    Private指示對于單個用戶的整個或部分響應(yīng)消息,不能被共享緩存處理。這允許服務(wù)器僅僅描述當(dāng)用戶的部分響應(yīng)消息,此響應(yīng)消息對于其他用戶的請求無效。   
    no-cache指示請求或響應(yīng)消息不能緩存   
    no-store用于防止重要的信息被無意的發(fā)布。在請求消息中發(fā)送將使得請求和響應(yīng)消息都不使用緩存。   
    max-age指示客戶機可以接收生存期不大于指定時間(以秒為單位)的響應(yīng)。   
    min-fresh指示客戶機可以接收響應(yīng)時間小于當(dāng)前時間加上指定時間的響應(yīng)。   
    max-stale指示客戶機可以接收超出超時期間的響應(yīng)消息。如果指定max-stale消息的值,那么客戶機可以接收超出超時期指定值之內(nèi)的響應(yīng)消息。   
    Date頭域   
    Date頭域表示消息發(fā)送的時間,時間的描述格式由rfc822定義。例如,Date:Mon,31Dec200104:25:57GMT。Date描述的時間表示世界標(biāo)準(zhǔn)時,換算成本地時間,需要知道用戶所在的時區(qū)。   
    Pragma頭域   
    Pragma頭域用來包含實現(xiàn)特定的指令,最常用的是Pragma:no-cache。在HTTP/1.1協(xié)議中,它的含義和Cache-Control:no-cache相同。   
       
    2、請求消息   
    請求消息的第一行為下面的格式:   
    Method SP Request-URI SP HTTP-Version CRLF    
    Method表示對于Request-URI完成的方法,這個字段是大小寫敏感的,包括OPTIONS、GET、HEAD、POST、PUT、DELETE、TRACE。方法GET和HEAD應(yīng)該被所有的通用WEB服務(wù)器支持,其他所有方法的實現(xiàn)是可選的。GET方法取回由Request-URI標(biāo)識的信息。HEAD方法也是取回由Request-URI標(biāo)識的信息,只是可以在響應(yīng)時,不返回消息體。POST方法可以請求服務(wù)器接收包含在請求中的實體信息,可以用于提交表單,向新聞組、BBS、郵件群組和數(shù)據(jù)庫發(fā)送消息。   
    SP表示空格。   
    Request-URI遵循URI格式,在此字段為星號(*)時,說明請求并不用于某個特定的資源地址,而是用于服務(wù)器本身。   
    HTTP-Version表示支持的HTTP版本,例如為HTTP/1.1。   
    CRLF表示換行回車符。   
    請求頭域允許客戶端向服務(wù)器傳遞關(guān)于請求或者關(guān)于客戶機的附加信息。請求頭域可能包含下列字段Accept、Accept-Charset、Accept- Encoding、Accept-Language、Authorization、From、Host、If-Modified-Since、If- Match、If-None-Match、If-Range、If-Range、If-Unmodified-Since、Max-Forwards、 Proxy-Authorization、Range、Referer、User-Agent。對請求頭域的擴展要求通訊雙方都支持,如果存在不支持的請求頭域,一般將會作為實體頭域處理。   
    典型的請求消息:   
    GEThttp://class/download.microtool.de:80/somedata.exe   
    Host:download.microtool.de   
    Accept:*/*  
    Pragma:no-cache  
    Cache-Control:no-cache  
    Referer:http://class/download.microtool.de/  
    User-Agent:Mozilla/4.04[en](Win95;I;Nav)  
    Range:bytes=554554-  
    上例第一行表示HTTP客戶端(可能是瀏覽器、下載程序)通過GET方法獲得指定URL下的文件。棕色的部分表示請求頭域的信息,綠色的部分表示通用頭部分。  
    Host頭域  
    Host頭域指定請求資源的Intenet主機和端口號,必須表示請求url的原始服務(wù)器或網(wǎng)關(guān)的位置。HTTP/1.1請求必須包含主機頭域,否則系統(tǒng)會以400狀態(tài)碼返回。  
    Referer頭域  
    Referer頭域允許客戶端指定請求uri的源資源地址,這可以允許服務(wù)器生成回退鏈表,可用來登陸、優(yōu)化cache等。他也允許廢除的或錯誤的連接由于維護的目的被追蹤。如果請求的uri沒有自己的uri地址,Referer不能被發(fā)送。如果指定的是部分uri地址,則此地址應(yīng)該是一個相對地址。  
    Range頭域  
    Range頭域可以請求實體的一個或者多個子范圍。例如,  
    表示頭500個字節(jié):bytes=0-499  
    表示第二個500字節(jié):bytes=500-999  
    表示最后500個字節(jié):bytes=-500  
    表示500字節(jié)以后的范圍:bytes=500-  
    第一個和最后一個字節(jié):bytes=0-0,-1  
    同時指定幾個范圍:bytes=500-600,601-999  
    但是服務(wù)器可以忽略此請求頭,如果無條件GET包含Range請求頭,響應(yīng)會以狀態(tài)碼206(PartialContent)返回而不是以200(OK)。  
    User-Agent頭域  
    User-Agent頭域的內(nèi)容包含發(fā)出請求的用戶信息。  
      
    3、響應(yīng)消息  
    響應(yīng)消息的第一行為下面的格式:  
    HTTP-Version SP Status-Code SP Reason-Phrase CRLF  
    HTTP-Version表示支持的HTTP版本,例如為HTTP/1.1。  
    Status-Code是一個三個數(shù)字的結(jié)果代碼。  
    Reason-Phrase給Status-Code提供一個簡單的文本描述。Status-Code主要用于機器自動識別,Reason-Phrase主要用于幫助用戶理解。Status-Code的第一個數(shù)字定義響應(yīng)的類別,后兩個數(shù)字沒有分類的作用。第一個數(shù)字可能取5個不同的值:  
    1xx:信息響應(yīng)類,表示接收到請求并且繼續(xù)處理  
    2xx:處理成功響應(yīng)類,表示動作被成功接收、理解和接受  
    3xx:重定向響應(yīng)類,為了完成指定的動作,必須接受進一步處理  
    4xx:客戶端錯誤,客戶請求包含語法錯誤或者是不能正確執(zhí)行  
    5xx:服務(wù)端錯誤,服務(wù)器不能正確執(zhí)行一個正確的請求  
    響應(yīng)頭域允許服務(wù)器傳遞不能放在狀態(tài)行的附加信息,這些域主要描述服務(wù)器的信息和Request-URI進一步的信息。響應(yīng)頭域包含Age、 Location、Proxy-Authenticate、Public、Retry-After、Server、Vary、Warning、WWW- Authenticate。對響應(yīng)頭域的擴展要求通訊雙方都支持,如果存在不支持的響應(yīng)頭域,一般將會作為實體頭域處理。  
    典型的響應(yīng)消息:  
    HTTP/1.0200OK  
    Date:Mon,31Dec200104:25:57GMT  
    Server:Apache/1.3.14(Unix)  
    Content-type:text/html  
    Last-modified:Tue,17Apr200106:46:28GMT  
    Etag:"a030f020ac7c01:1e9f"  
    Content-length:39725426  
    Content-range:bytes554554-40279979/40279980  
    上例第一行表示HTTP服務(wù)端響應(yīng)一個GET方法。棕色的部分表示響應(yīng)頭域的信息,綠色的部分表示通用頭部分,紅色的部分表示實體頭域的信息。  
    Location響應(yīng)頭  
    Location響應(yīng)頭用于重定向接收者到一個新URI地址。  
    Server響應(yīng)頭  
    Server響應(yīng)頭包含處理請求的原始服務(wù)器的軟件信息。此域能包含多個產(chǎn)品標(biāo)識和注釋,產(chǎn)品標(biāo)識一般按照重要性排序。  
      
    4、實體信息  
    請求消息和響應(yīng)消息都可以包含實體信息,實體信息一般由實體頭域和實體組成。實體頭域包含關(guān)于實體的原信息,實體頭包括Allow、Content-Base、Content-Encoding、Content-Language、 Content-Length、Content-Location、Content-MD5、Content-Range、Content-Type、 Etag、Expires、Last-Modified、extension-header。extension-header允許客戶端定義新的實體頭,但是這些域可能無法未接受方識別。實體可以是一個經(jīng)過編碼的字節(jié)流,它的編碼方式由Content-Encoding或Content-Type定義,它的長度由Content-Length或Content-Range定義。  
    Content-Type實體頭  
    Content-Type 實體頭用于向接收方指示實體的介質(zhì)類型,指定HEAD方法送到接收方的實體介質(zhì)類型,或GET方法發(fā)送的請求介質(zhì)類型Content-Range實體頭  
    Content-Range實體頭  
    用于指定整個實體中的一部分的插入位置,他也指示了整個實體的長度。在服務(wù)器向客戶返回一個部分響應(yīng),它必須描述響應(yīng)覆蓋的范圍和整個實體長度。一般格式:  
    Content-Range:bytes-unit SP first-byte-pos - last-byte-pos/entity-legth  
    例如,傳送頭500個字節(jié)次字段的形式:Content-Range:bytes0-499/1234如果一個http消息包含此節(jié)(例如,對范圍請求的響應(yīng)或?qū)σ幌盗蟹秶闹丿B請求),Content-Range表示傳送的范圍,Content-Length表示實際傳送的字節(jié)數(shù)。  
    Last-modified實體頭  
    Last-modified實體頭指定服務(wù)器上保存內(nèi)容的最后修訂時間。  
      
    5、 HTTP 頭參考(microsoft)  
    HTTP 請求和 HTTP 響應(yīng)都使用頭發(fā)送有關(guān) HTTP 消息的信息。頭由一系列行組成,每行都包含名稱,然后依次是冒號、空格、值。字段可按任何順序排列。某些頭字段既能用于請求頭也能用于響應(yīng)頭,而另一些頭字段只能用于其中之一。   
    許多請求頭字段都允許客戶端在值部分指定多個可接受的選項,有時甚至可以對這些選項的首選項進行排名。多個項以逗號分隔。例如,客戶端可以發(fā)送包含 “Content-Encoding: gzip, compress,”的請求頭,表示可以接受各種壓縮類型。如果服務(wù)器的響應(yīng)正文使用 gzip 編碼,其響應(yīng)頭中將包含“Content-Encoding: gzip”。  
    有些字段可以在單個頭中出現(xiàn)多次。例如,頭可以有多個“Warning”字段。  
    下表列出了 HTTP 1.1 頭字段。注意:有些頭字段是 MIME 字段。MIME 字段在 Internet Engineering Task Force (IETF) 文檔 RFC 2045 中進行了定義,但也可用于 HTTP 1.1 協(xié)議。有關(guān) MIME 和 HTTP 1.1 規(guī)范的詳細信息,請參閱 IEIF 頁。  
    一般頭字段  
    一般頭字段可用于請求消息和響應(yīng)消息。  
     名稱          示例值   
    Cache-Control  "max-age=10"   
    Connection    "close"   
    Date          "Tue, 11 Jul 2000 18:23:51 GMT"   
    Pragma        "no-cache"   
    Trailer         "Date"   
    Transfer-Encoding "chunked"   
    Upgrade       "SHTTP/1.3"   
    Via            "HTTP/1.1 Proxy1, HTTP/1.1 Proxy2"   
    Warning       "112 Disconnected Operation"   
    請求頭字段   
    請求頭字段僅用于請求消息。  
       名稱             示例值   
    Accept           "text/html, image/*"   
    Accept-Charset   "iso8859-5"   
    Accept-Encoding  "gzip, compress"   
    Accept-Language "en, fr"   
    Authorization     [credentials]   
    Content-Encoding "gzip"   
    Expect           "100-continue"   
    From            "user@microsoft.com"   
    Host            "www.microsoft.com"   
    If-Match         "entity_tag001"   
    If-Modified-Since "Tue, 11 Jul 2000 18:23:51 GMT"   
    If-None-Match    "entity_tag001"   
    If-Range         "entity_tag001" or "Tue, 11 Jul 2000 18:23:51 GMT"   
    If-Unmodified-Since "Tue, 11 Jul 2000 18:23:51 GMT"   
    Max-Forwards    "3"   
    Proxy-Authorization [credentials]   
    Range       "bytes=100-599"   
    Referer      "http://www.microsoft.com/resources.asp"   
    TE          "trailers"   
    User-Agent   "Mozilla/4.0 (compatible; MSIE 5.5; Windows NT 5.0)"  
       
    >>請求頭字段的具體含義  
    Accept:瀏覽器可接受的MIME類型。   
    Accept-Charset:瀏覽器可接受的字符集。   
    Accept-Encoding:瀏覽器能夠進行解碼的數(shù)據(jù)編碼方式,比如gzip。  
    Accept-Language:瀏覽器所希望的語言種類,當(dāng)服務(wù)器能夠提供一種以上的語言版本時要用到。   
    Authorization:授權(quán)信息,通常出現(xiàn)在對服務(wù)器發(fā)送的WWW-Authenticate頭的應(yīng)答中。   
    Connection:表示是否需要持久連接。如果Servlet看到這里的值為“Keep-Alive”,或者看到請求使用的是HTTP 1.1(HTTP 1.1默認進行持久連接),它就可以利用持久連接的優(yōu)點,當(dāng)頁面包含多個元素時(例如Applet,圖片),顯著地減少下載所需要的時間。要實現(xiàn)這一點, Servlet需要在應(yīng)答中發(fā)送一個Content-Length頭,最簡單的實現(xiàn)方法是:先把內(nèi)容寫入ByteArrayOutputStream,然后在正式寫出內(nèi)容之前計算它的大小。  
    Content-Length:表示請求消息正文的長度。   
    Cookie:設(shè)置cookie,這是最重要的請求頭信息之一  
    From:請求發(fā)送者的email地址,由一些特殊的Web客戶程序使用,瀏覽器不會用到它。   
    Host:初始URL中的主機和端口。   
    If-Modified-Since:只有當(dāng)所請求的內(nèi)容在指定的日期之后又經(jīng)過修改才返回它,否則返回304“Not Modified”應(yīng)答。   
    Pragma:指定“no-cache”值表示服務(wù)器必須返回一個刷新后的文檔,即使它是代理服務(wù)器而且已經(jīng)有了頁面的本地拷貝。   
    Referer:包含一個URL,用戶從該URL代表的頁面出發(fā)訪問當(dāng)前請求的頁面。   
    User-Agent:瀏覽器類型,如果Servlet返回的內(nèi)容與瀏覽器類型有關(guān)則該值非常有用。  
    UA-Pixels,UA-Color,UA-OS,UA-CPU:由某些版本的IE瀏覽器所發(fā)送的非標(biāo)準(zhǔn)的請求頭,表示屏幕大小、顏色深度、操作系統(tǒng)和CPU類型。   
    響應(yīng)頭字段   
    響應(yīng)頭字段僅用于響應(yīng)消息。  
      名稱          示例值   
    Accept-Ranges  "none"   
    Age            "2147483648(2^31)"   
    ETag           "b38b9-17dd-367c5dcd"   
    Last-Modified    "Tue, 11 Jul 2000 18:23:51 GMT"   
    Location        "http://localhost/redirecttarget.asp"   
    Proxy-Authenticate [challenge]   
    Retry-After      "Tue, 11 Jul 2000 18:23:51 GMT" or "60"   
    Server         "Microsoft-IIS/5.0"   
    Vary            "Date"   
    WWW-Authenticate [challenge]   
    實體頭字段   
    實體頭字段可以用于請求消息或響應(yīng)消息。實體頭字段中包含消息實體正文的有關(guān)信息,如使用的編碼格式。  
       名稱            示例值   
    Allow              "GET, HEAD"   
    Content-Encoding   "gzip"   
    Content-Language  "en"   
    Content-Length     "8445"   
    Content-Location   "http://localhost/page.asp"   
    Content-MD5       [md5-digest]   
    Content-Range     "bytes 2543-4532/7898"   
    Content-Type      "text/html"   
    Expires           "Tue, 11 Jul 2000 18:23:51 GMT"   
    Last-Modified      "Tue, 11 Jul 2000 18:23:51 GMT"   
    >>實體頭字段的具體含義  
    Allow 服務(wù)器支持哪些請求方法(如GET、POST等)。  
    Content-Encoding 文檔的編碼(Encode)方法。只有在解碼之后才可以得到Content-Type頭指定的內(nèi)容類型。利用gzip壓縮文檔能夠顯著地減少HTML文檔的下載時間。Java的GZIPOutputStream可以很方便地進行g(shù)zip壓縮,但只有Unix上的Netscape和Windows上的IE 4、IE 5才支持它。  
    Content-Length 表示內(nèi)容長度。只有當(dāng)瀏覽器使用持久HTTP連接時才需要這個數(shù)據(jù)。  
    Content-Type 表示后面的文檔屬于什么MIME類型。Servlet默認為text/plain,但通常需要顯式地指定為text/html。  
    Date 當(dāng)前的GMT時間。你可以用setDateHeader來設(shè)置這個頭以避免轉(zhuǎn)換時間格式的麻煩。   
    Expires 應(yīng)該在什么時候認為文檔已經(jīng)過期,從而不再緩存它?   
    Last-Modified 文檔的最后改動時間??蛻艨梢酝ㄟ^If-Modified-Since請求頭提供一個日期,該請求將被視為一個條件GET,只有改動時間遲于指定時間的文檔才會返回,否則返回一個304(Not Modified)狀態(tài)。  
    Location 表示客戶應(yīng)當(dāng)?shù)侥睦锶ヌ崛∥臋n。Location通常不是直接設(shè)置的,而是通過HttpServletResponse的sendRedirect方法,該方法同時設(shè)置狀態(tài)代碼為302。   
    Refresh 表示瀏覽器應(yīng)該在多少時間之后刷新文檔,以秒計。除了刷新當(dāng)前文檔之外,你還可以通過setHeader("Refresh", "5; URL=http://host/path")讓瀏覽器讀取指定的頁面。   
    注意這種功能通常是通過設(shè)置HTML頁面HEAD區(qū)的<META HTTP-EQUIV="Refresh" C>實現(xiàn),這是因為,自動刷新或重定向?qū)τ谀切┎荒苁褂肅GI或Servlet的HTML編寫者十分重要。但是,對于Servlet來說,直接設(shè)置 Refresh頭更加方便。   
    注意Refresh的意義是“N秒之后刷新本頁面或訪問指定頁面”,而不是“每隔N秒刷新本頁面或訪問指定頁面 ”。因此,連續(xù)刷新要求每次都發(fā)送一個Refresh頭,而發(fā)送204狀態(tài)代碼則可以阻止瀏覽器繼續(xù)刷新,不管是使用Refresh頭還是<META HTTP-EQUIV="Refresh" ...>。   
    注意Refresh頭不屬于HTTP 1.1正式規(guī)范的一部分,而是一個擴展,但Netscape和IE都支持它。   
    請求頭示例  
    以下是 HTTP 請求的簡單示例。  
    GET /articles/news/today.asp HTTP/1.1  
    Accept: */*   
    Accept-Language: en-us   
    Connection: Keep-Alive   
    Host: localhost   
    Referer: http://localhost/links.asp   
    User-Agent: Mozilla/4.0 (compatible; MSIE 5.5; Windows NT 5.0)   
    Accept-Encoding: gzip, deflate   
    該請求具有請求行,其中包括方法 (GET)、資源路徑 (/articles/news/today.asp) 和 HTTP 版本 (HTTP/1.1)。由于該請求沒有正文,故所有請求行后面的內(nèi)容都是頭的一部分。緊接著頭之后是一個空行,表示頭已結(jié)束。   
    響應(yīng)頭示例   
    Web 服務(wù)器可以通過多種方式響應(yīng)前一個請求。假設(shè)文件是可以訪問的,并且用戶具有查看該文件的權(quán)限,則響應(yīng)類似于:   
    HTTP/1.1 200 OK   
    Server: Microsoft-IIS/5.0   
    Date: Thu, 13 Jul 2000 05:46:53 GMT   
    Content-Length: 2291   
    Content-Type: text/html   
    Set-Cookie: ASPSESSIONIDQQGGGNCG=LKLDFFKCINFLDMFHCBCBMFLJ; path=/   
    Cache-control: private   
    ...   
    響應(yīng)的第一行稱為狀態(tài)行。它包含響應(yīng)所用的 HTTP 版本、狀態(tài)編碼 (200) 和原因短語。示例中包含一個頭,其中具有五個字段,接著是一個空行(回車和換行符),然后是響應(yīng)正文的頭兩行。   
    有關(guān)HTTP頭完整、詳細的說明,請參見http://www.w3.org/Protocols/的HTTP規(guī)范。   
        
    附錄:HTTP協(xié)議狀態(tài)碼的含義   
      狀態(tài)代碼 狀態(tài)信息 含義    
    100 Continue 初始的請求已經(jīng)接受,客戶應(yīng)當(dāng)繼續(xù)發(fā)送請求的其余部分。(HTTP 1.1新)   
    101 Switching Protocols 服務(wù)器將遵從客戶的請求轉(zhuǎn)換到另外一種協(xié)議(HTTP 1.1新   
    200 OK 一切正常,對GET和POST請求的應(yīng)答文檔跟在后面。   
    201 Created 服務(wù)器已經(jīng)創(chuàng)建了文檔,Location頭給出了它的URL。   
    202 Accepted 已經(jīng)接受請求,但處理尚未完成。    
    203 Non-Authoritative Information 文檔已經(jīng)正常地返回,但一些應(yīng)答頭可能不正確,因為使用的是文檔的拷貝(HTTP 1.1新)。    
    204 No Content 沒有新文檔,瀏覽器應(yīng)該繼續(xù)顯示原來的文檔。   
    205 Reset Content 沒有新的內(nèi)容,但瀏覽器應(yīng)該重置它所顯示的內(nèi)容。用來強制瀏覽器清除表單輸入內(nèi)容(HTTP 1.1新)。    
    206 Partial Content 客戶發(fā)送了一個帶有Range頭的GET請求,服務(wù)器完成了它(HTTP 1.1新)。    
    300 Multiple Choices 客戶請求的文檔可以在多個位置找到,這些位置已經(jīng)在返回的文檔內(nèi)列出。如果服務(wù)器要提出優(yōu)先選擇,則應(yīng)該在Location應(yīng)答頭指明。    
    301 Moved Permanently 客戶請求的文檔在其他地方,新的URL在Location頭中給出,瀏覽器應(yīng)該自動地訪問新的URL。    
    302 Found 類似于301,但新的URL應(yīng)該被視為臨時性的替代,而不是永久性的。注意,在HTTP1.0中對應(yīng)的狀態(tài)信息是“Moved Temporatily”,出現(xiàn)該狀態(tài)代碼時,瀏覽器能夠自動訪問新的URL,因此它是一個很有用的狀態(tài)代碼。注意這個狀態(tài)代碼有時候可以和301替換使用。例如,如果瀏覽器錯誤地請求http://host/~user(缺少了后面的斜杠),有的服務(wù)器返回301,有的則返回302。嚴格地說,我們只能假定只有當(dāng)原來的請求是GET時瀏覽器才會自動重定向。請參見307。    
    303 See Other 類似于301/302,不同之處在于,如果原來的請求是POST,Location頭指定的重定向目標(biāo)文檔應(yīng)該通過GET提?。℉TTP 1.1新)。    
    304 Not Modified 客戶端有緩沖的文檔并發(fā)出了一個條件性的請求(一般是提供If-Modified-Since頭表示客戶只想比指定日期更新的文檔)。服務(wù)器告訴客戶,原來緩沖的文檔還可以繼續(xù)使用。   
    305 Use Proxy 客戶請求的文檔應(yīng)該通過Location頭所指明的代理服務(wù)器提取(HTTP 1.1新)。   
    307 Temporary Redirect 和302(Found)相同。許多瀏覽器會錯誤地響應(yīng)302應(yīng)答進行重定向,即使原來的請求是POST,即使它實際上只能在POST請求的應(yīng)答是303時才能重定向。由于這個原因,HTTP 1.1新增了307,以便更加清除地區(qū)分幾個狀態(tài)代碼:當(dāng)出現(xiàn)303應(yīng)答時,瀏覽器可以跟隨重定向的GET和POST請求;如果是307應(yīng)答,則瀏覽器只能跟隨對GET請求的重定向。(HTTP 1.1新)    
    400 Bad Request 請求出現(xiàn)語法錯誤。    
    401 Unauthorized 客戶試圖未經(jīng)授權(quán)訪問受密碼保護的頁面。應(yīng)答中會包含一個WWW-Authenticate頭,瀏覽器據(jù)此顯示用戶名字/密碼對話框,然后在填寫合適的Authorization頭后再次發(fā)出請求。    
    403 Forbidden 資源不可用。服務(wù)器理解客戶的請求,但拒絕處理它。通常由于服務(wù)器上文件或目錄的權(quán)限設(shè)置導(dǎo)致。    
    404 Not Found 無法找到指定位置的資源。這也是一個常用的應(yīng)答,    
    405 Method Not Allowed 請求方法(GET、POST、HEAD、DELETE、PUT、TRACE等)對指定的資源不適用。(HTTP 1.1新)    
    406 Not Acceptable 指定的資源已經(jīng)找到,但它的MIME類型和客戶在Accpet頭中所指定的不兼容(HTTP 1.1新)。    
    407 Proxy Authentication Required 類似于401,表示客戶必須先經(jīng)過代理服務(wù)器的授權(quán)。(HTTP 1.1新)   
    408 Request Timeout 在服務(wù)器許可的等待時間內(nèi),客戶一直沒有發(fā)出任何請求。客戶可以在以后重復(fù)同一請求。(HTTP 1.1新)    
    409 Conflict 通常和PUT請求有關(guān)。由于請求和資源的當(dāng)前狀態(tài)相沖突,因此請求不能成功。(HTTP 1.1新)   
    410 Gone 所請求的文檔已經(jīng)不再可用,而且服務(wù)器不知道應(yīng)該重定向到哪一個地址。它和404的不同在于,返回407表示文檔永久地離開了指定的位置,而404表示由于未知的原因文檔不可用。(HTTP 1.1新)   
    411 Length Required 服務(wù)器不能處理請求,除非客戶發(fā)送一個Content-Length頭。(HTTP 1.1新)   
    412 Precondition Failed 請求頭中指定的一些前提條件失?。℉TTP 1.1新)。    
    413 Request Entity Too Large 目標(biāo)文檔的大小超過服務(wù)器當(dāng)前愿意處理的大小。如果服務(wù)器認為自己能夠稍后再處理該請求,則應(yīng)該提供一個Retry-After頭(HTTP 1.1新)。    
    414 Request URI Too Long URI太長(HTTP 1.1新)。    
    416 Requested Range Not Satisfiable 服務(wù)器不能滿足客戶在請求中指定的Range頭。(HTTP 1.1新)    
    500 Internal Server Error 服務(wù)器遇到了意料不到的情況,不能完成客戶的請求。    
    501 Not Implemented 服務(wù)器不支持實現(xiàn)請求所需要的功能。例如,客戶發(fā)出了一個服務(wù)器不支持的PUT請求。   
    502 Bad Gateway 服務(wù)器作為網(wǎng)關(guān)或者代理時,為了完成請求訪問下一個服務(wù)器,但該服務(wù)器返回了非法的應(yīng)答。    
    503 Service Unavailable 服務(wù)器由于維護或者負載過重未能應(yīng)答。   
    504 Gateway Timeout 由作為代理或網(wǎng)關(guān)的服務(wù)器使用,表示不能及時地從遠程服務(wù)器獲得應(yīng)答。(HTTP 1.1新)    
    505 HTTP Version Not Supported 服務(wù)器不支持請求中所指明的HTTP版本 



    Author: orangelizq
    email: orangelizq@163.com

    歡迎大家訪問我的個人網(wǎng)站 萌萌的IT人
    posted on 2008-12-25 10:25 桔子汁 閱讀(532) 評論(0)  編輯  收藏 所屬分類: other
    主站蜘蛛池模板: 9i9精品国产免费久久| 永久免费视频网站在线观看| 国产亚洲精品无码专区| 免费一级黄色毛片| 亚洲色偷偷综合亚洲AV伊人蜜桃| 免费观看国产精品| 久久久久久一品道精品免费看| 亚洲最大的成人网| 亚洲精品乱码久久久久久自慰| 国产黄在线观看免费观看不卡| 亚洲国产成人乱码精品女人久久久不卡 | 在线亚洲v日韩v| 久热综合在线亚洲精品| 免费观看成人久久网免费观看| 99热亚洲色精品国产88| 中文字幕亚洲综合久久男男| 亚洲免费福利在线视频| 亚洲国产精品一区二区三区在线观看| 亚洲国产人成中文幕一级二级| 国产在线观看片a免费观看| 一级片在线免费看| 亚洲成A人片在线播放器| 国产日韩亚洲大尺度高清| 成人性生交大片免费看午夜a| 免费精品99久久国产综合精品| 亚洲欧美国产国产一区二区三区| 精品亚洲综合在线第一区| 日韩高清在线高清免费| 亚洲免费在线视频| 一级黄色毛片免费看| 亚洲天堂男人影院| 久久精品国产亚洲av高清漫画| 国产亚洲大尺度无码无码专线| 日韩电影免费在线观看视频| 最近中文字幕免费2019| 国产一级在线免费观看| 男男gay做爽爽免费视频| 亚洲男人天堂2018av| 亚洲高清美女一区二区三区| 亚洲开心婷婷中文字幕| 亚洲第一网站男人都懂|