URI中的(./)是什么意思?

4

在阅读并查看这里的示例之后,

以uri为例:

 http://a/b/c/d;p?q

重定向到"g"将会重定向我到http://a/b/c/g(因为c是目录)

所以我问自己什么时候应该使用./g

实际上这和[进入当前文件夹并查找g]是一样的

那么为什么这种语法甚至存在呢? ./ 我该什么时候使用它?

2个回答

2
通用URI语法由一系列分层组件构成,包括方案(scheme)、权限(authority)、路径(path)、查询(query)和片段(fragment)。
  URI         = scheme ":" hier-part [ "?" query ] [ "#" fragment ]

  hier-part   = "//" authority path-abempty
              / path-absolute
              / path-rootless
              / path-empty

方案和路径组件是必需的,虽然路径可以为空(没有字符)。当存在权限时,路径必须为空或以斜杠(“/”)字符开头。当不存在权限时,路径不能以两个斜杠字符(“//”)开头。这些限制导致了路径的五个不同的ABNF规则(第3.3节),只有其中一个与任何给定的URI引用匹配。

  The following are two example URIs and their component parts:

         foo://example.com:8042/over/there?name=ferret#nose
         \_/   \______________/\_________/ \_________/ \__/
          |           |            |            |        |
       scheme     authority       path        query   fragment
          |   _____________________|__
         / \ /                        \
         urn:example:animal:ferret:nose

我不明白这怎么回答我的问题。 - Royi Namir
@RoyiNamir 我不确定为什么我做了cw...你能否添加正确的答案?我相信我已经完全理解了你的问题。 - NullPoiиteя
它并没有说明何时/为什么应该使用 ./,只是展示了结构... 我错了吗? - Royi Namir

2
我这样来说:
这个结构之所以存在(或被创建/定义),并没有特殊的原因。它只是其他结构(.//g)的逻辑组合,这些结构由于其他原因而需要定义。由于这些结构(此处为路径组件)可以更或多或少地组合,因此可疑的构造 ./g 是良好定义的,因此是有效的。但这并不意味着一定有特殊的原因来定义这个结构。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接