Changeset 1432 for draft-ietf-httpbis/latest/p1-messaging.xml
- Timestamp:
- 02/09/11 01:20:56 (11 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
draft-ietf-httpbis/latest/p1-messaging.xml
r1431 r1432 1190 1190 ignored by some clients or cause others to cease parsing. 1191 1191 </t> 1192 1193 <section title="Request-Line" anchor="request-line"> 1194 <x:anchor-alias value="Request-Line"/> 1195 <t> 1196 The Request-Line begins with a method token, followed by a single 1197 space (SP), the request-target, another single space (SP), the 1198 protocol version, and ending with CRLF. 1199 </t> 1200 <figure><artwork type="abnf2616"><iref primary="true" item="Grammar" subitem="Request-Line"/> 1201 <x:ref>Request-Line</x:ref> = <x:ref>Method</x:ref> <x:ref>SP</x:ref> <x:ref>request-target</x:ref> <x:ref>SP</x:ref> <x:ref>HTTP-Version</x:ref> <x:ref>CRLF</x:ref> 1202 </artwork></figure> 1203 1204 <section title="Method" anchor="method"> 1205 <x:anchor-alias value="Method"/> 1206 <t> 1207 The Method token indicates the request method to be performed on the 1208 target resource. The request method is case-sensitive. 1209 </t> 1210 <figure><artwork type="abnf2616"><iref primary="true" item="Grammar" subitem="Method"/> 1211 <x:ref>Method</x:ref> = <x:ref>token</x:ref> 1212 </artwork></figure> 1213 <t> 1214 See &method; for further information, such as the list of methods defined 1215 by this specification, the IANA registry, and considerations for new methods. 1216 </t> 1217 </section> 1218 1219 <section title="request-target" anchor="request-target"> 1220 <x:anchor-alias value="request-target"/> 1221 <t> 1222 The request-target identifies the target resource upon which to apply 1223 the request. The four options for request-target are described in 1224 <xref target="request-target-types"/>. 1225 </t> 1226 <figure><artwork type="abnf2616"><iref primary="true" item="Grammar" subitem="request-target"/> 1227 <x:ref>request-target</x:ref> = "*" 1228 / <x:ref>absolute-URI</x:ref> 1229 / ( <x:ref>path-absolute</x:ref> [ "?" <x:ref>query</x:ref> ] ) 1230 / <x:ref>authority</x:ref> 1231 </artwork></figure> 1232 <t> 1233 HTTP does not place a pre-defined limit on the length of a request-target. 1234 A server &MUST; be prepared to receive URIs of unbounded length and 1235 respond with the 414 (URI Too Long) status code if the received 1236 request-target would be longer than the server wishes to handle 1237 (see &status-414;). 1238 </t> 1239 <t> 1240 Various ad-hoc limitations on request-target length are found in practice. 1241 It is &RECOMMENDED; that all HTTP senders and recipients support 1242 request-target lengths of 8000 or more octets. 1243 </t> 1244 <x:note> 1245 <t> 1246 <x:h>Note:</x:h> Fragments (<xref target="RFC3986" x:fmt="," x:sec="3.5"/>) 1247 are not part of the request-target and thus will not be transmitted 1248 in an HTTP request. 1249 </t> 1250 </x:note> 1251 </section> 1252 </section> 1253 1254 <section title="Status-Line" anchor="status-line"> 1255 <x:anchor-alias value="Status-Line"/> 1256 <t> 1257 The first line of a Response message is the Status-Line, consisting 1258 of the protocol version, a space (SP), the status code, another space, 1259 a possibly-empty textual phrase describing the status code, and 1260 ending with CRLF. 1261 </t> 1262 <figure><artwork type="abnf2616"><iref primary="true" item="Grammar" subitem="Status-Line"/> 1263 <x:ref>Status-Line</x:ref> = <x:ref>HTTP-Version</x:ref> <x:ref>SP</x:ref> <x:ref>Status-Code</x:ref> <x:ref>SP</x:ref> <x:ref>Reason-Phrase</x:ref> <x:ref>CRLF</x:ref> 1264 </artwork></figure> 1265 1266 <section title="Status Code" anchor="status.code"> 1267 <x:anchor-alias value="Status-Code"/> 1268 <t> 1269 The Status-Code element is a 3-digit integer result code of the attempt to 1270 understand and satisfy the request. See &status-code-reasonphr; for 1271 further information, such as the list of status codes defined by this 1272 specification, the IANA registry, and considerations for new status codes. 1273 </t> 1274 <figure><artwork type="abnf2616"><iref primary="true" item="Grammar" subitem="Status-Code"/> 1275 <x:ref>Status-Code</x:ref> = 3<x:ref>DIGIT</x:ref> 1276 </artwork></figure> 1277 <t> 1278 The first digit of the Status-Code defines the class of response. The 1279 last two digits do not have any categorization role. There are 5 1280 values for the first digit: 1281 <list style="symbols"> 1282 <t> 1283 1xx: Informational - Request received, continuing process 1284 </t> 1285 <t> 1286 2xx: Success - The action was successfully received, 1287 understood, and accepted 1288 </t> 1289 <t> 1290 3xx: Redirection - Further action must be taken in order to 1291 complete the request 1292 </t> 1293 <t> 1294 4xx: Client Error - The request contains bad syntax or cannot 1295 be fulfilled 1296 </t> 1297 <t> 1298 5xx: Server Error - The server failed to fulfill an apparently 1299 valid request 1300 </t> 1301 </list> 1302 </t> 1303 </section> 1304 1305 <section title="Reason Phrase" anchor="reason.phrase"> 1306 <x:anchor-alias value="Reason-Phrase"/> 1307 <t> 1308 The Reason Phrase exists for the sole purpose of providing a textual 1309 description associated with the numeric status code, out of deference to 1310 earlier Internet application protocols that were more frequently used with 1311 interactive text clients. A client &SHOULD; ignore the content of the Reason 1312 Phrase. 1313 </t> 1314 <figure><artwork type="abnf2616"><iref primary="true" item="Grammar" subitem="Reason-Phrase"/> 1315 <x:ref>Reason-Phrase</x:ref> = *( <x:ref>HTAB</x:ref> / <x:ref>SP</x:ref> / <x:ref>VCHAR</x:ref> / <x:ref>obs-text</x:ref> ) 1316 </artwork></figure> 1317 </section> 1318 </section> 1319 1192 1320 </section> 1193 1321 … … 1463 1591 For response messages, whether or not a message-body is included with 1464 1592 a message is dependent on both the request method and the response 1465 status code (<xref target="status.code .and.reason.phrase"/>).1593 status code (<xref target="status.code"/>). 1466 1594 Responses to the HEAD request method never include a message-body 1467 1595 because the associated response header fields (e.g., Transfer-Encoding, … … 1671 1799 </artwork></figure> 1672 1800 1673 <section title="Request-Line" anchor="request-line"> 1674 <x:anchor-alias value="Request-Line"/> 1675 <t> 1676 The Request-Line begins with a method token, followed by a single 1677 space (SP), the request-target, another single space (SP), the 1678 protocol version, and ending with CRLF. 1679 </t> 1680 <figure><artwork type="abnf2616"><iref primary="true" item="Grammar" subitem="Request-Line"/> 1681 <x:ref>Request-Line</x:ref> = <x:ref>Method</x:ref> <x:ref>SP</x:ref> <x:ref>request-target</x:ref> <x:ref>SP</x:ref> <x:ref>HTTP-Version</x:ref> <x:ref>CRLF</x:ref> 1682 </artwork></figure> 1683 1684 <section title="Method" anchor="method"> 1685 <x:anchor-alias value="Method"/> 1686 <t> 1687 The Method token indicates the request method to be performed on the 1688 target resource. The request method is case-sensitive. 1689 </t> 1690 <figure><artwork type="abnf2616"><iref primary="true" item="Grammar" subitem="Method"/> 1691 <x:ref>Method</x:ref> = <x:ref>token</x:ref> 1692 </artwork></figure> 1693 <t> 1694 See &method; for further information, such as the list of methods defined 1695 by this specification, the IANA registry, and considerations for new methods. 1696 </t> 1697 </section> 1698 1699 <section title="request-target" anchor="request-target"> 1700 <x:anchor-alias value="request-target"/> 1701 <t> 1702 The request-target identifies the target resource upon which to apply 1703 the request. In most cases, the user agent is provided a URI reference 1801 <section title="Types of Request Target" anchor="request-target-types"> 1802 <t> 1803 In most cases, the user agent is provided a URI reference 1704 1804 from which it determines an absolute URI for identifying the target 1705 1805 resource. When a request to the resource is initiated, all or part 1706 1806 of that URI is used to construct the HTTP request-target. 1707 1807 </t> 1708 <figure><artwork type="abnf2616"><iref primary="true" item="Grammar" subitem="request-target"/>1709 <x:ref>request-target</x:ref> = "*"1710 / <x:ref>absolute-URI</x:ref>1711 / ( <x:ref>path-absolute</x:ref> [ "?" <x:ref>query</x:ref> ] )1712 / <x:ref>authority</x:ref>1713 </artwork></figure>1714 1808 <t> 1715 1809 The four options for request-target are dependent on the nature of the … … 1817 1911 </t> 1818 1912 </x:note> 1819 <t>1820 HTTP does not place a pre-defined limit on the length of a request-target.1821 A server &MUST; be prepared to receive URIs of unbounded length and1822 respond with the 414 (URI Too Long) status code if the received1823 request-target would be longer than the server wishes to handle1824 (see &status-414;).1825 </t>1826 <t>1827 Various ad-hoc limitations on request-target length are found in practice.1828 It is &RECOMMENDED; that all HTTP senders and recipients support1829 request-target lengths of 8000 or more octets.1830 </t>1831 <x:note>1832 <t>1833 <x:h>Note:</x:h> Fragments (<xref target="RFC3986" x:fmt="," x:sec="3.5"/>)1834 are not part of the request-target and thus will not be transmitted1835 in an HTTP request.1836 </t>1837 </x:note>1838 </section>1839 1913 </section> 1840 1914 … … 1973 2047 [ <x:ref>message-body</x:ref> ] ; <xref target="message.body"/> 1974 2048 </artwork></figure> 1975 1976 <section title="Status-Line" anchor="status-line">1977 <x:anchor-alias value="Status-Line"/>1978 <t>1979 The first line of a Response message is the Status-Line, consisting1980 of the protocol version, a space (SP), the status code, another space,1981 a possibly-empty textual phrase describing the status code, and1982 ending with CRLF.1983 </t>1984 <figure><artwork type="abnf2616"><iref primary="true" item="Grammar" subitem="Status-Line"/>1985 <x:ref>Status-Line</x:ref> = <x:ref>HTTP-Version</x:ref> <x:ref>SP</x:ref> <x:ref>Status-Code</x:ref> <x:ref>SP</x:ref> <x:ref>Reason-Phrase</x:ref> <x:ref>CRLF</x:ref>1986 </artwork></figure>1987 1988 <section title="Status Code and Reason Phrase" anchor="status.code.and.reason.phrase">1989 <x:anchor-alias value="Reason-Phrase"/>1990 <x:anchor-alias value="Status-Code"/>1991 <t>1992 The Status-Code element is a 3-digit integer result code of the attempt to1993 understand and satisfy the request. See &status-code-reasonphr; for1994 further information, such as the list of status codes defined by this1995 specification, the IANA registry, and considerations for new status codes.1996 </t>1997 <t>1998 The Reason Phrase exists for the sole purpose of providing a textual1999 description associated with the numeric status code, out of deference to2000 earlier Internet application protocols that were more frequently used with2001 interactive text clients. A client &SHOULD; ignore the content of the Reason2002 Phrase.2003 </t>2004 <t>2005 The first digit of the Status-Code defines the class of response. The2006 last two digits do not have any categorization role. There are 52007 values for the first digit:2008 <list style="symbols">2009 <t>2010 1xx: Informational - Request received, continuing process2011 </t>2012 <t>2013 2xx: Success - The action was successfully received,2014 understood, and accepted2015 </t>2016 <t>2017 3xx: Redirection - Further action must be taken in order to2018 complete the request2019 </t>2020 <t>2021 4xx: Client Error - The request contains bad syntax or cannot2022 be fulfilled2023 </t>2024 <t>2025 5xx: Server Error - The server failed to fulfill an apparently2026 valid request2027 </t>2028 </list>2029 </t>2030 <figure><artwork type="abnf2616"><iref primary="true" item="Grammar" subitem="Status-Code"/><iref primary="true" item="Grammar" subitem="Reason-Phrase"/>2031 <x:ref>Status-Code</x:ref> = 3<x:ref>DIGIT</x:ref>2032 <x:ref>Reason-Phrase</x:ref> = *( <x:ref>HTAB</x:ref> / <x:ref>SP</x:ref> / <x:ref>VCHAR</x:ref> / <x:ref>obs-text</x:ref> )2033 </artwork></figure>2034 </section>2035 </section>2036 2049 2037 2050 </section>
Note: See TracChangeset
for help on using the changeset viewer.