HTTP 基础

2017-06-06  本文已影响0人  苏近之2017

HTTP 作用

用于客户端和服务器端的通信。

请求资源一方成为客户端,提供资源一方成为服务器端。

有时候,双方角色可能会互换。

请求必须由客户端发出,而服务器端回复响应。

请求报文

请求报文是由请求方法、请求 URL、协议版本、可选的请求首部字段和内容实体构成的。

image

响应报文

响应报文基本上由协议版本、状态码、用以解释状态码的原因短语、可选的响应首部字段以及实体主体构成。

image

HTTP 特性

HTTP 是一种不保存状态,即无状态(stateless)协议

这是为了更快地处理大量事务,确保协议的可伸缩性,而特意把 HTTP 协议设计成如此简单的。

为了实现期望的保持状态的功能,于是引入了 Cookie 技术。

HTTP 使用 URI 定位互联网上的资源

image

如果不是访问特定资源,而是访问服务器,可以使用*号。

HTTP 方法

  1. GET

    获取资源。

  2. POST

    传输实体主体(创建资源)。

  3. PUT

    传输文件

  4. DELETE

    删除文件

  5. HEAD

    获得报文首部

  6. OPTIONS

    询问支持的方法

  7. TRACE

    追踪路径,可以查询发送出去的请求是如何被加工篡改的。

    容易引发 XST(跨站追踪)攻击,所以不用。

  8. CONNECT

    要求用隧道协议连接代理。主要使用 SSL 和 TLS 协议吧通信内容加密后经网络隧道传输。

持久化和管线化

持久化指的是和服务器端保持持久连接,直到有一方提出断开,才结束连接。

管线化指的是同时并发发送多个请求。即多个http请求不需要等待相应的应答就能够写进同一个socket的技术。

使用 Cookie 管理状态

如果让服务器管理全部客户端状态,会加大服务器的负担。

所以为了保留无状态协议并且解决类似的矛盾,引入了 Cookie 技术。

Cookie 技术通过在请求和响应报文中写入 Cookie 信息来控制客户端的状态。

Cookie 的流程

image image
上一篇下一篇

猜你喜欢

热点阅读