我最近阅读了一些:http://tools.ietf.org/html/rfc6570#section-1
我找到了以下网址模板示例:
GIVEN :
var="value";
x=1024;
path=/foo/bar;
{/var,x}/here /value/1024/here
{#path,x}/here #/foo/bar,1024/here
这些似乎是矛盾的。
在第一个中,似乎 / 取代了, 在第二个中,似乎保留了,。
因此,我想知道这个特定RFC是否存在不一致之处。我是这些RFC的新手,所以也许我并不完全理解这些开发背后的文化。
答案 0 :(得分:2)
这两个例子没有矛盾。它们说明了扩展第一个字符为/
的表达式的规则与扩展第一个字符为#
的表达式的规则不同的要点。这些替代扩展规则几乎就是拥有各种不同的魔术主角 - 在RFC中称为运算符。
带有前导/
的表达式根据一条规则进行扩展,该规则表示“表达式中的每个变量都被其值替换,前面带有/
字符”。 (我正在解释实际规则,该规则在RFC的第3.2.6节中描述。)带有前导#
的表达式根据一条规则扩展,该规则说“表达式中的每个变量都被其替换值,第一个变量前面有一个#
,后面的变量前面有一个,
。(再次解释,参见3.2.4节的真实规则。)