一致性要求
在这篇文档中,所有的图、示例和笔记都是非规范性的,就像标注了非规范性的所有章节一样。在文档中没有指定的其他内容都是规范性的。
在这篇文档中的关键词如“必须(MUST)”、“必须不(MUST NOT)”、“需要(REQUIRED)”、“应该(SHALL)”、“不应该(SHALL NOT)”、“应该(SHOULD)”、“不应该(SHOULD NOT)”、“推荐(RECOMMENDED)”、“也许(MAY)”和“可选(OPTIONAL)”可以按照RFC2119 所述进行解释。
作为算法的一部分的命令式语句(如“删除任何前导空格”或“返回 false 并且中止后续步骤”)在介绍算法时应该与关键词一起解释(“必须(MUST)”、“应该(SHOULD)”、“也许(MAY)”等)。
算法或者指定步骤中的符合要求的措辞可以通过任何方式表述,只要最终的结果是等价的。(尤其是在算法定义中,我们的目标是竟可能简单的操作而不是最求完美。)
2.1 术语和其他公约
_ASCII_表示定义在ANSI.X3-4.1986的字符编码表。
这个文档参考 UTF-8 的值,使用在 STD 63(RFX3629)定义的 UTF-8 标准格式。
如命名算法或者定义关键输入的标识如_this_。
命名 header 字段或者变量如|this|。
本文引用了WebSocket连接失败
(_Fail the WebSocket Connection_)这个程序。这个程序位于第 7.1.7 节。
转换小写字符
(_Converting a string to ASCII lowercase_)意味着替换从 U+0041 到 U+005A 的所有字符(拉丁字母大写 A 到 Z)为相对应的 U+0061 到 U+007A 的字符(拉丁字母小写 A-Z)。
不区分 ASCII 大小写(_ASCII case-insensitive_)比较方式意味着通过码点(code point)比较这两个字符,如果这两个字符是 U+0041 到 U+005A(拉丁字母大写 A 到 Z)和相对应的 U+0061 到 U+007A 的字符(拉丁字母小写 A-Z),那么也认为这两个字符相等。
文档中URI
这个词被定 sj 义在了RFC3986。
当需要实现 WebSocket 协议中一部分的_send_数据时,这个实现是有可能会延迟任意时间来进行数据传输的,例如,使用数据缓冲区来保证发送较少的 IP 数据包。