HTTP 基础

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
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容