📜  URL 和 URI 的区别(1)

📅  最后修改于: 2023-12-03 15:35:31.999000             🧑  作者: Mango

URL 和 URI 的区别

什么是 URI?

URI(Uniform Resource Identifier)是一个标识某一资源的字符串,它通常用于在互联网上定位和描述资源。它包含了一个协议(如 http、ftp 等)和一个资源名。URI 还包括 URL 和 URN。

什么是 URL?

URL(Uniform Resource Locator)是 URI 的一种形式,用于描述资源的位置,通常包含协议、主机名、路径等信息。

例如,http://example.com/index.html 这个字符串就是一个典型的 URL。

URI 和 URL 有什么区别?

它们之间的关系有时候会令人有些困惑。URI 是一个比 URL 更广泛的概念,它还包括 URN(Uniform Resource Name)。URI 指定了资源的标识符,而 URL 用于定位这个标识符所表示的资源。换句话说,URI 是一个资源的名字,在一个 URL 中,我们不仅知道了资源的名字,也知道了它的位置。

简单来说,URL 是 URI 的一个子集,用于定位资源。

示例代码
// URI
URI uri = new URI("http://example.com/index.html");

// URL
URL url = new URL("http://example.com/index.html");

// 获取资源名
uri.getPath(); // "/index.html"
url.getPath(); // "/index.html"

// 获取协议
uri.getScheme(); // "http"
url.getProtocol(); // "http"