2

RFC 3986 指定了 URI 的通用格式,但声明它“没有定义 URI 的生成语法;该任务由每个 URI 方案的单独规范执行。 ”我现在正在寻找该特定HTTP URI 语法的当前规范.

HTTP/1.1 在 RFC 2616(超文本传输​​协议 -- HTTP/1.1)中指定。在第 3.2 节中,它定义了“ http URL 的特定于方案的语法和语义”。这看起来很简单:

http_URL = "http:" "//" 主机 [ ":" 端口 ] [ abs_path [ "?" 询问 ]]

此规则引用 RFC 2396(统一资源标识符 (URI):通用语法)中的规则,该规则已被 RFC 3986(统一资源标识符 (URI):通用语法)废弃。后一个 RFC 没有提到 abs_path,前一个没有提到 IPv6,而且 http_URL 至少缺少片段。

我错过了什么还是我完全错了?

4

1 回答 1

2

1) URI 方案的官方列表由 IANA 在http://www.iana.org/assignments/uri-schemes.html维护,这确实表明 RFC 2616 定义了“http”URI 方案。

2) RFC 2616 早于 RFC 3986(显然),并且从那以后没有更新。但很快就会;请参阅http://greenbytes.de/tech/webdav/draft-ietf-httpbis-p1-messaging-19.html#rfc.section.2.7了解最新和最棒的信息。

3) 片段标识符不是 URI 方案定义的一部分;它们适用于所有计划;见http://greenbytes.de/tech/webdav/rfc3986.html#rfc.section.3.5

于 2012-07-11T08:59:16.610 回答