您的位置:首页 > 其它

URi和Url格式

2015-12-10 10:47 169 查看
1.主要的区别

url一定是有scheme。

uri不一定有scheme,可以是相对和绝对的。(相对是依赖环境的)

2.uri的结构(3种划分)

1)[scheme:]scheme-specific-part[#fragment]

2)[scheme:][//authority][path][?query][#fragment]

3)[scheme:][//host:port][path][?query][#fragment]

3.一个例子说明三种结构

分析的url:http://www.java2s.com:8080/yourpath/fileName.htm?stove=10&path=32&id=4#harvic

scheme:匹对上面的两个Uri标准形式,很容易看出在:前的部分是scheme,所以这个Uri字符串的sheme是:http

scheme-specific-part:很 容易看出scheme-specific-part是包含在scheme和fragment之间的部分,也就是包括第二部分的[//authority] [path][?query]这几个小部分,所在这个Uri字符串的scheme-specific-part 是://www.java2s.com:8080/yourpath/fileName.htm?stove=10&path=32& id=4 ,注意要带上//,因为除了[scheme:]和[#fragment]部分全部都是scheme-specific-part,当然包括最前面的//;

fragment:这个是更容易看出的,因为在最后用#分隔的部分就是fragment,所以这个Uri的fragment是:harvic
下面就是对scheme-specific-part进行拆分了;
在scheme-specific-part中,最前端的部分就是authority,?后面的部分是query,中间的部分就是path

authority:很容易看出scheme-specific-part最新端的部分是:www.java2s.com:8080

query:在scheme-specific-part中,?后的部分为:stove=10&path=32&id=4

path:在**query:**在scheme-specific-part中,除了authority和query其余都是path的部分:/yourpath/fileName.htm
又由于authority又一步可以划分为host:port形式,其中host:port用冒号分隔,冒号前的是host,冒号后的是port,所以:

host:www.java2s.com

port:8080
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: