您的位置:首页 > 其它

c5 URLs and URIs - URIs

2014-04-24 17:13 288 查看
URIs

URI:Uniform Resource Identifier 。

URL:Uniform Resource Locator ,是最常见的一种URI。对java程序来说,URL是最简单的定位资源位置和获取资源的方式。

请求服务器返回的只是资源的“representation”,来自bytes

URI的语法:

scheme:scheme-specific-part

specific-part 并没有规定的语法,然而大部分是这么做的: //authority/path?query

URLs

URL是URI的一种,指向网络上的一个位置,客户端可以通过那个位置获取资源。URI只指明了一个资源是什么,但并没有给出在哪里,怎么取!而URL则可以办到后者!

URL的语法是:

protocol://userInfo@host:port/path?query#fragment

userInfo是可选项,如果需要,可以是username,或者password(很少的情况下需要这个)

host:提供资源的server,可以是hostname,www.google.com,也可以是ip地址,202.36.45.81

port:可选,因为大部分都使用默认的,比如HTTP使用80端口。

userInfo,host,port 共同组成authority。

path:指向server上的指定的资源。通常看起来像是filesystem path,但可能是,可能不是。如果是,那就是相对于document root的路径,而不会是相对于filesystem root的路径,因为那样就太不安全了。

query:向server提供额外的参数,供运行在server上的程序使用。

fragment:指向资源中的某一点。

Relative URLs

相对URLs是指复用已存在URL的某些部分,比如在该网页中
http://www.ibiblio.org/javafaq/java‐tutorial.html
点击了 <a href="javafaq.html"> 这个超链接,那要加载的URL是:http://www.ibiblio.org/javafaq/javafaq.html

如果点击的超链接是 <a href="/projects/ipv6/">,那会加载 http://www.ibiblio.org/projects/ipv6/

相对URLs有很多好处,1,省得typing了。2,可使一个资源可用多种协议,比如HTTP/FTP,Http用于浏览,Ftp用于镜像站点,3,更重要的是,当document tree要移动,或者从一个站点copy到另一个站点时,不需要改动内部的链接。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: