⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 rfc2616.txt

📁 C/C++语言的CGI接口库
💻 TXT
📖 第 1 页 / 共 5 页
字号:
   in header fields. See section 19.3 for further information.      Note: Recipients of date values are encouraged to be robust in      accepting date values that may have been sent by non-HTTP      applications, as is sometimes the case when retrieving or posting      messages via proxies/gateways to SMTP or NNTP.Fielding, et al.            Standards Track                    [Page 20]RFC 2616                        HTTP/1.1                       June 1999   All HTTP date/time stamps MUST be represented in Greenwich Mean Time   (GMT), without exception. For the purposes of HTTP, GMT is exactly   equal to UTC (Coordinated Universal Time). This is indicated in the   first two formats by the inclusion of "GMT" as the three-letter   abbreviation for time zone, and MUST be assumed when reading the   asctime format. HTTP-date is case sensitive and MUST NOT include   additional LWS beyond that specifically included as SP in the   grammar.       HTTP-date    = rfc1123-date | rfc850-date | asctime-date       rfc1123-date = wkday "," SP date1 SP time SP "GMT"       rfc850-date  = weekday "," SP date2 SP time SP "GMT"       asctime-date = wkday SP date3 SP time SP 4DIGIT       date1        = 2DIGIT SP month SP 4DIGIT                      ; day month year (e.g., 02 Jun 1982)       date2        = 2DIGIT "-" month "-" 2DIGIT                      ; day-month-year (e.g., 02-Jun-82)       date3        = month SP ( 2DIGIT | ( SP 1DIGIT ))                      ; month day (e.g., Jun  2)       time         = 2DIGIT ":" 2DIGIT ":" 2DIGIT                      ; 00:00:00 - 23:59:59       wkday        = "Mon" | "Tue" | "Wed"                    | "Thu" | "Fri" | "Sat" | "Sun"       weekday      = "Monday" | "Tuesday" | "Wednesday"                    | "Thursday" | "Friday" | "Saturday" | "Sunday"       month        = "Jan" | "Feb" | "Mar" | "Apr"                    | "May" | "Jun" | "Jul" | "Aug"                    | "Sep" | "Oct" | "Nov" | "Dec"      Note: HTTP requirements for the date/time stamp format apply only      to their usage within the protocol stream. Clients and servers are      not required to use these formats for user presentation, request      logging, etc.3.3.2 Delta Seconds   Some HTTP header fields allow a time value to be specified as an   integer number of seconds, represented in decimal, after the time   that the message was received.       delta-seconds  = 1*DIGIT3.4 Character Sets   HTTP uses the same definition of the term "character set" as that   described for MIME:Fielding, et al.            Standards Track                    [Page 21]RFC 2616                        HTTP/1.1                       June 1999   The term "character set" is used in this document to refer to a   method used with one or more tables to convert a sequence of octets   into a sequence of characters. Note that unconditional conversion in   the other direction is not required, in that not all characters may   be available in a given character set and a character set may provide   more than one sequence of octets to represent a particular character.   This definition is intended to allow various kinds of character   encoding, from simple single-table mappings such as US-ASCII to   complex table switching methods such as those that use ISO-2022's   techniques. However, the definition associated with a MIME character   set name MUST fully specify the mapping to be performed from octets   to characters. In particular, use of external profiling information   to determine the exact mapping is not permitted.      Note: This use of the term "character set" is more commonly      referred to as a "character encoding." However, since HTTP and      MIME share the same registry, it is important that the terminology      also be shared.   HTTP character sets are identified by case-insensitive tokens. The   complete set of tokens is defined by the IANA Character Set registry   [19].       charset = token   Although HTTP allows an arbitrary token to be used as a charset   value, any token that has a predefined value within the IANA   Character Set registry [19] MUST represent the character set defined   by that registry. Applications SHOULD limit their use of character   sets to those defined by the IANA registry.   Implementors should be aware of IETF character set requirements [38]   [41].3.4.1 Missing Charset   Some HTTP/1.0 software has interpreted a Content-Type header without   charset parameter incorrectly to mean "recipient should guess."   Senders wishing to defeat this behavior MAY include a charset   parameter even when the charset is ISO-8859-1 and SHOULD do so when   it is known that it will not confuse the recipient.   Unfortunately, some older HTTP/1.0 clients did not deal properly with   an explicit charset parameter. HTTP/1.1 recipients MUST respect the   charset label provided by the sender; and those user agents that have   a provision to "guess" a charset MUST use the charset from theFielding, et al.            Standards Track                    [Page 22]RFC 2616                        HTTP/1.1                       June 1999   content-type field if they support that charset, rather than the   recipient's preference, when initially displaying a document. See   section 3.7.1.3.5 Content Codings   Content coding values indicate an encoding transformation that has   been or can be applied to an entity. Content codings are primarily   used to allow a document to be compressed or otherwise usefully   transformed without losing the identity of its underlying media type   and without loss of information. Frequently, the entity is stored in   coded form, transmitted directly, and only decoded by the recipient.       content-coding   = token   All content-coding values are case-insensitive. HTTP/1.1 uses   content-coding values in the Accept-Encoding (section 14.3) and   Content-Encoding (section 14.11) header fields. Although the value   describes the content-coding, what is more important is that it   indicates what decoding mechanism will be required to remove the   encoding.   The Internet Assigned Numbers Authority (IANA) acts as a registry for   content-coding value tokens. Initially, the registry contains the   following tokens:   gzip An encoding format produced by the file compression program        "gzip" (GNU zip) as described in RFC 1952 [25]. This format is a        Lempel-Ziv coding (LZ77) with a 32 bit CRC.   compress        The encoding format produced by the common UNIX file compression        program "compress". This format is an adaptive Lempel-Ziv-Welch        coding (LZW).        Use of program names for the identification of encoding formats        is not desirable and is discouraged for future encodings. Their        use here is representative of historical practice, not good        design. For compatibility with previous implementations of HTTP,        applications SHOULD consider "x-gzip" and "x-compress" to be        equivalent to "gzip" and "compress" respectively.   deflate        The "zlib" format defined in RFC 1950 [31] in combination with        the "deflate" compression mechanism described in RFC 1951 [29].Fielding, et al.            Standards Track                    [Page 23]RFC 2616                        HTTP/1.1                       June 1999   identity        The default (identity) encoding; the use of no transformation        whatsoever. This content-coding is used only in the Accept-        Encoding header, and SHOULD NOT be used in the Content-Encoding        header.   New content-coding value tokens SHOULD be registered; to allow   interoperability between clients and servers, specifications of the   content coding algorithms needed to implement a new value SHOULD be   publicly available and adequate for independent implementation, and   conform to the purpose of content coding defined in this section.3.6 Transfer Codings   Transfer-coding values are used to indicate an encoding   transformation that has been, can be, or may need to be applied to an   entity-body in order to ensure "safe transport" through the network.   This differs from a content coding in that the transfer-coding is a   property of the message, not of the original entity.       transfer-coding         = "chunked" | transfer-extension       transfer-extension      = token *( ";" parameter )   Parameters are in  the form of attribute/value pairs.       parameter               = attribute "=" value       attribute               = token       value                   = token | quoted-string   All transfer-coding values are case-insensitive. HTTP/1.1 uses   transfer-coding values in the TE header field (section 14.39) and in   the Transfer-Encoding header field (section 14.41).   Whenever a transfer-coding is applied to a message-body, the set of   transfer-codings MUST include "chunked", unless the message is   terminated by closing the connection. When the "chunked" transfer-   coding is used, it MUST be the last transfer-coding applied to the   message-body. The "chunked" transfer-coding MUST NOT be applied more   than once to a message-body. These rules allow the recipient to   determine the transfer-length of the message (section 4.4).   Transfer-codings are analogous to the Content-Transfer-Encoding   values of MIME [7], which were designed to enable safe transport of   binary data over a 7-bit transport service. However, safe transport   has a different focus for an 8bit-clean transfer protocol. In HTTP,   the only unsafe characteristic of message-bodies is the difficulty in   determining the exact body length (section 7.2.2), or the desire to   encrypt data over a shared transport.Fielding, et al.            Standards Track                    [Page 24]RFC 2616                        HTTP/1.1                       June 1999   The Internet Assigned Numbers Authority (IANA) acts as a registry for   transfer-coding value tokens. Initially, the registry contains the   following tokens: "chunked" (section 3.6.1), "identity" (section   3.6.2), "gzip" (section 3.5), "compress" (section 3.5), and "deflate"   (section 3.5).   New transfer-coding value tokens SHOULD be registered in the same way   as new content-coding value tokens (section 3.5).   A server which receives an entity-body with a transfer-coding it does   not understand SHOULD return 501 (Unimplemented), and close the   connection. A server MUST NOT send transfer-codings to an HTTP/1.0   client.3.6.1 Chunked Transfer Coding   The chunked encoding modifies the body of a message in order to   transfer it as a series of chunks, each with its own size indicator,   followed by an OPTIONAL trailer containing entity-header fields. This   allows dynamically produced content to be transferred along with the   information necessary for the recipient to verify that it has   received the full message.       Chunked-Body   = *chunk                        last-chunk                        trailer                        CRLF       chunk          = chunk-size [ chunk-extension ] CRLF                        chunk-data CRLF       chunk-size     = 1*HEX       last-chunk     = 1*("0") [ chunk-extension ] CRLF       chunk-extension= *( ";" chunk-ext-name [ "=" chunk-ext-val ] )       chunk-ext-name = token       chunk-ext-val  = 

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -