(本地)文件路径是 URI



在某些输入上,我们允许以下路径:

  • C:\文件夹
  • \\
  • 服务器\文件夹
  • http://example.com/...

我可以将它们全部标记为"URI"吗?

C:/Folder/server/Folder/是文件路径。

http://example.com/是一个 URL,它是一个 URI 子类型,因此您可以将其标记为 URI,但不能反过来(就像正方形是矩形,反之则不然(。

当然,在这里你发布了一个清晰、简单的例子。在讨论 URI 和 URL 之间的区别时,答案不仅不明确,而且存在争议。我建议查看此线程以及其中发布的答案以进行澄清。不过,一般来说,人们普遍认为主要区别在于URL提供了一种访问方法(例如 http://(。

因此,如果我们将您的第一个文件路径转换为 URL,它将变为以下内容(请注意添加的访问方法(:

file:///c:/Folder/test.txt

如果您修改所有文件路径以包含访问方法,如我的示例所示,则可以将它们标记为 URI。

严格来说不,除非你确保它是一个绝对路径并在开头添加"file://"。

根据 RFC 3986 第 3 节:

URI         = scheme ":" hier-part [ "?" query ] [ "#" fragment ]
hier-part   = "//" authority path-abempty
            / path-absolute
            / path-rootless
            / path-empty

scheme":"不在方[]括号中,这意味着它们不是可选的。

但是,HTML

标准称这些为"路径相对方案无URL字符串",它们在HTML元素的href属性中有效,因此可以将相对Unix路径称为"URL"(而不是绝对的Unix路径或Windows路径(。

相关内容

  • 没有找到相关文章

最新更新