问题标签 [rfc5988]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
http - RFC 5988 是否允许 HTTP 链接标头中的空格?
RFC 5988的第 5 节定义了 Link 标头的语法如下:
本规范使用RFC 822中定义的增强型 Backus-Naur 形式 (BNF) 。
如果正确理解 BNF,规范不允许分号 ( ;
) 和link-param
. 但是,在第 5 节中出现的示例中,两个元素之间存在空格:
我还在 Github 的 API 中观察到 Link 标头中的空白,我认为这是更符合标准的 API 之一:
空格应该是允许的吗?除了这些例子之外,我找不到任何可以提供证据的东西。
java - 包含逗号的 URI 在 HTTP 链接标头中是否有效?
以下包含逗号的 HTTP Link 标头是否有效?
RFC5988说:
请注意,扩展关系类型必须是 Link 标头中的绝对 URI,如果它们包含分号 (";") 或逗号 (",")(因为这些字符在标头本身中用作分隔符),则必须用引号引起来。
但是,这不包括#link-value。这必须是根据 RFC 3987的 URI-Reference,它似乎允许这样做。链接头本身也可以有多个值,来自RFC5988第 5.5 节:
我正在使用 Apache HttpCore 4.4.9 中的 BasicHeaderValueParser 使用以下代码在 Java 中解析此链接标头:
在逗号上标记并打印以下内容:
这是有效的行为吗?