📅  最后修改于: 2023-12-03 15:35:31.999000             🧑  作者: Mango
URI(Uniform Resource Identifier)是一个标识某一资源的字符串,它通常用于在互联网上定位和描述资源。它包含了一个协议(如 http、ftp 等)和一个资源名。URI 还包括 URL 和 URN。
URL(Uniform Resource Locator)是 URI 的一种形式,用于描述资源的位置,通常包含协议、主机名、路径等信息。
例如,http://example.com/index.html 这个字符串就是一个典型的 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"