[关闭]
@songying 2018-07-03T20:58:46.000000Z 字数 3249 阅读 1161

Http 基本知识

HTTP


一些概念

GET 从服务器向客户端发送命名资源
PUT 将来自客户端的数据存储到一个命名的服务器资源中去
DELETE 从服务器中删除命名资源
POST 将客户端数据发送到一个服务器网关应用程序
HEAD 仅发送命名资源响应中的 HTTP 首部

- 状态码: 每条 HTTP 响应报文返回时都会携带一个状态码。

200 OK。文档正确返回
302 Redirect(重定向)。到其他地方去获取资源
404 Not Found(没找到)。无法找到这个资源

详解URL

1. URI,URL,URN

URI 是一类更通用的资源标识符,URL 实际上是它的一个子集。URI 是一个通用的概念,由两个主要的子集 URL 和 URN 构成,URL 是通过描述资源的位置来标识资源的,而 URN则是通过名字来识别资源的,与它们当前所处位置无关。

目前来看,网络中使用的基本上都是URL。

2. URL的结构

URL大致可分为3部分,此处以http://www.joes-hardware.com/seasonal/index-fall.html为例:

3. URL语法

元素URL的语法格式为:<scheme>://<user>:<password>@<host>:<port>/<path>;<params>?<query>#<frag>,在这些中最重要打元素就是上文所说的方案(scheme),主机(host), 路径(path)。一般情况下了解这三个就够了。

元素 描述 默认值
方案 访问服务器以获取资源时要使用哪种协议
用户 某些方案访问资源时需要的用户名 匿名
密码 用户名后面可能要包含的密码,中间由冒号(:)分隔 <E-mail 地址 >
主机 资源宿主服务器的主机名或 IP 地址
端口 资源宿主服务器正在监听的端口号。 域名和端口之间使用“:”作为分隔符。HTTP的默认端口号为80 每个方案特有
路径 服务器上资源的路径名,由一个斜杠(/)将其与前面的URL 组件分隔开来
参数 某些方案会用这个组件来指定输入参数。参数为名 / 值对。URL 中可以包含多个参数字段,它们相互之间以及与路径
查询 查询组件的内容没有通用格式。用字符“?”将其与 URL 的其余部分分隔开来
片段 一小片或一部分资源的名字。通过字符“#”将其与 URL 的其余部分分隔开来

- 主机与端口

绝对URL与相对URL

绝对URL包含访问资源所需的全部信息。如:http://www.song.com/tools.html

相对URL是相对于基础URL进行解析。如./tools.html。其中.表示的就是基础URL。

要注意的是,相对 URL 为保持一组资源(比如一些 HTML 页面)的可移植性提供了一种便捷方式。如果使用的是相对 URL,就可以在搬移一组文档的同时,仍然保持链接的有效性,因为相对 URL 都是相对于新基础进行解释的。

添加新批注
在作者公开此批注前,只有你和作者可见。
回复批注