URL的语法 【URI资源统一标识符的子集】

一、URL 语法建立的通用格式【由 9 部分构成】

1. 通用格式:

  1. 几乎没有哪个 URL 中包含了所有这些组件;
  2. URL 最重要的 3 个部分是方案(scheme) 、 主机(host)和路径(path);
<scheme>://<user>:<password>@<host>:<port>/<path>;<params>?<query>#<frag>

在这里插入图片描述

二、URL语法中:9 部分构成简介:

1. 方案——使用什么协议:

作用:

  1. 方案实际上是规定如何访问指定资源的主要标识符;
  2. 告诉负责解析 URL 的应用 程序应该使用什么协议;
  3. 方案组件必须以一个字母符号开始,由第一个“:”符号将其与 URL 的其余部分分 隔开来;
  4. 方案名是大小写无关的,因此 URL“http://www.joes-hardware.com”和 “HTTP://www.joes-hardware.com”是等价的;

2. 主机与端口 :

作用:提 供了这两组信息

  1. 哪台机器装载了资源;
  2. 在那台机 器的什么地方可以找到能对目标资源进行访问的服务器;

主机组件:

  1. 标识了因特网上能够访问资源的宿主机器;
  2. 可以用上述主机名(www.joeshardware.com),或者 IP 地址来表示主机名;

端口组件:

  1. 标识了服务器正在监听的网络端口。
  2. 对下层使用了 TCP 协议的 HTTP 来 说,默认端口号为 80

3. 用户和密码组件 :

简述:

  1. 很多服务器都要求输入用户名和密码才会允许用 户访问数据;
  2. FTP 服务器就是这样一个常见的实例;

例:
在这里插入图片描述

  1. 第一个例子没有用户或密码组件,只有标准的方案、主机和路径;
  2. 如果某应用程 序使用的 URL 方案要求输入用户名和密码,比如 FTP,但用户没有提供,它通常 会插入一个默认的用户名和密码;
  3. 第二个例子显示了一个指定为 anonymous 的用户名 ;字符@*”*将用户和密码组件与 URL 的其余 部分分隔开来
  4. 第三个例子中,指定了用户名(anonymous)和密码(my_passwd),两者之间由 字符“:”分隔

4. 路径 组件 :

简述:

  1. 路径组件说明了资源位于服务器的什么地方;
  2. 路径通常很像一个分级的文件 系统路径;
  3. 例子:在这里插入图片描述

路径为 /seasonal/index-fall.html;
路径是服务器定位资源时所需的信息;

可以用字符“/”将 HTTP URL 的路 径组件划分成一些路径段(path segment)(还是与 UNIX 文件系统中的文件路径类 似)。每个路径段都有自己的参数(param)组件。

在这里插入图片描述

5. 参数 :

FTP 协议:

  1. 由字符“;”将其与 URL 的 其余部分(以及各名值对)分隔开来;
  2. 提供了访问资源所需的所有 附加信息;
  3. 在这里插入图片描述

如前所述,HTTP URL 的路径组件可以分成若干路径段。每段都可以有自己的参 数;
在这里插入图片描述

  1. 例子就有两个路径段,hammers 和 index.html。hammers 路径段有参数 sale,其值 为 false。
  2. index.html 段有参数 graphics,其值为 true

6. 查询字符串 【查询组件】 :

在这里插入图片描述
问号(?)右边的内容:

  1. 这部分被称为查询(query)组件;
  2. URL 的查询组件和标识网关资源的 URL 路径组件一起被发送给网关资源;
  3. 基本上可以将网关当作访问其他应用程序的 访问点;

图 2-2 中有一个作为 Joe 的五金商店清单查询应用程序的网关的服务器;

  1. 除了有些不合规则的字符需要特别处理之外,对查询组件的格 式没什么要求;
  2. 很多网关都希望查询字符串以一系列“名 / 值”对的形 式出现,名值对之间用字符“&”分隔;
    在这里插入图片描述

7. 片段 组件:

简述:

  1. 有些资源类型,比如 HTML,除了资源级之外,还可以做进一步的划分;
  2. 比如,对 一个带有章节的大型文本文档来说,资源的 URL 会指向整个文本文档,但理想的情 况是,能够指定资源中的那些章节;
  3. 为了引用部分资源或资源的一个片段,URL 支持使用片段(frag)组件来表示一个 资源内部的片段;
  4. 片段挂在 URL 的右手边,最前面有一个字符“#”;
    在这里插入图片描述

注意:
5. HTTP 服务器通常只处理整个对象;
6. 而不是对象的片段,客户端不能将片段传送给 服务器(参见图 2-3);
7. 浏览器从服务器获得了整个资源之后,会根据片段来显示你 感兴趣的那部分资源。
在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值