在互联网上有很多讨论,张贴,评论和问题来区分URI,URL和URN。请解释一下answer,但是我对代码中的实现结果感到困惑。
Q :如果URI是超级URL集,那么它如何获得以下输出:
URI : /XXX/abc.do
URL : http://examplehost:8080/XXX/abc.do当我编写以下代码时:
System.out.println(“URI : “+ httpRequestObj.getRequestURI());
System.out.println(“URL : “+ httpRequestObj.getRequestURL());编辑:您能否通过将和URI、URL和URN的原始概念保持在范围内来共享一个详细的答案?
致以敬意,
阿伦·库马尔
发布于 2013-09-03 10:35:43
如果URI是超级URL集,那么它怎么会得到以下输出.
URI和URL的定义不能用来推断getRequestURI()和getRequestURL()的行为。要了解方法返回的内容,需要阅读javadocs和Servlet规范。
这些方法的意义在于它们是什么,因为HttpRequest API是随着时间的推移而发展的,而且这种演化必须保持向后兼容性。
getRequestURI()确实返回一个URI,而getRequestURL()确实返回一个URL,但是URI和URL用于不同的事情。
发布于 2013-09-03 10:19:17
java.net.URI API给出了一个很好的解释:
URI是统一的资源标识符,而URL是统一的资源定位器。因此,抽象地说,每个URL都是一个URI,但并不是每个URI都是URL。这是因为URI还有另一个子类别,即统一资源名称(URN),它命名资源,但没有指定如何定位它们。上面显示的mailto、news和isbn URI是URN的示例。
https://stackoverflow.com/questions/18589307
复制相似问题