您的位置:首页 > 其它

web中的URL

2015-09-05 20:46 232 查看
这是我对于URL的认识与了解。

URL中文名叫做统一资源定位符,是浏览器寻找信息时所需的位置资源,但是大部分人容易和URI混淆下面来解释一下URI: URI是一类更通用的资源标识符,而URL实际上是它的一个子集。但在实际上HTTP应用程序处理的只是URI的URL子集。

2>>下面介绍一下的组成部分。 url的组成主要分为3部分。

1> 第一部分是URL方案(scheme)。方案可以告诉浏览器怎样访问服务器资源

2>第二部分指的是服务器的位置,这部分告知web客户端资源位于何处。

3>第三部分是资源路径。路径说明了请求的是服务器上哪个特定的本地资源。

例如:http(第一部分):// www.baidu.com(第二部分)/index.html(第三部分)

所以多数URL都有同样的:“方案:// 服务器位置/路径” 结构。

3>>下面说一下URL的语法。

URL提供了一种定位因特网上任意资源的手段,所以有多种不同的方案(http,ftp,smtp等)来访问,因此url的语法也会不同。

语法如下通常有9个部分组成: <scheme>:// <user>:<password>@<host>:<port>/path;<params>?<query>#<frag>

而对于URL最重要的是:方案(scheme),主机(host),路径(path)。

下面详细介绍这9个部分

1>方案<scheme>它会告诉负责解析URL的应用程序应该使用什么协议。另外方案组件必须以一个字母符号开始,由第一个“ :”将其与其它url部分分隔开来,方案名与大小写无关。

2>主机(host)与端口号(port)顾名思义主机即为你在网上获取资源的那台服务器位置,端口组件标识了服务器正在监听的网络端口,对于http来说默认端口是80。

3>用户名(user)和密码(密码):很多服务器需要输入用户名的密码才允许用户访问数据,例如常见的FTP服务器就是这个样子,这个比较好理解,一般按照语法规则来就是了。

4>路径(path)组件说明了资源位于服务器的什么地方,可以用字符“ / ”HTTP的URL的路径组件划分成一些路径短

5>参数(params)有时访问服务器不是简单地主机名和路径就能访问的,还需要更多的信息,比如传进一个参数,否则服务器就不会为请求提供服务。

参数组件是URL中的名值对的列表,由字符“ ;”将其与URL中其它部分分离。

6>查询字符串(query):对于很多资源例如数据库服务资源,可以通过提出问题或进行查询来请求资源范围,而查询字符串也有同样的效果。同样查询组件是用字符“ ?”来与URL中其它部分分离,它也是采用名值对的方式。但是名值对之间用字符“ &”来分隔。

7>片段(frag)为了引用部分资源或资源的一个片段,URL支持使用片段(frag)组件来表示一个资源内片段。需要说明的是:HTTP服务器通常只处理整个对象,而不是对象的片段,客户端不能将片段传送给服务器。浏览器从服务器获得整个资源后,会根据片段显示你感兴趣的那部分资源。

4>>URL编码机制

为了避开各种不安全的字符,这种编码机制通过一种转义表示不安全字符,这种转义表示法包含一个百分号(%),后面跟着两个表示字符ASCII码的十六位进制

例如:字符(~) ASCII(126(0*7e)) URL(http://www.xihaha.com/%7Ejoe)

5>>字符限制

1>% 保留作为编码字符的转义标志。

2>{},|,\,^,~,[]用与各种传输Agent代理等。

6>>有关方案问题。

1>http :超文本传输协议方案,除了没有用户名和密码之外,与通用的URL格式相符,默认端口为80.

基本格式:http://<host>:<port>/<path>?<query>#<frag>

2>https: 它与http的唯一区别是在于https方案使用了网景的SSL,SSL为http连接提供了端到端的加密机制,其语法与http语法相同,默认端口是403.

3>mailto:Mailto URL指向的是E-mail地址。基本格式为:mailto:<RFC-822-addr-spec>。例如:mailto:joe@joes-ds.com

4>ftp文件传输协议:可以用来从FTP服务器上下载或上传文件,并获取ftp服务器上的目录结构内容列表。

基本格式为:ftp:// <user>:<password>@<host>:<port>/path;<params>

5>rtsp,rtspu: RTSP URL 通过实时流传输协议解析音频媒体资源的标识符,方案中的u拜师它使用UDP协议 来获取资源

基本格式为:rtsp:// <user>:<password>@<host>:<port>/path

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