-
Notifications
You must be signed in to change notification settings - Fork 12
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
1 parent
8f90726
commit 895702c
Showing
1 changed file
with
23 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,23 @@ | ||
## 《图解 HTTP》读书笔记 | ||
|
||
《图解 HTTP》一书是日本学者上野宣所著,2014 年由于均良先生翻译并在国内出版。因为作者使用十分生动的语言和浅显易懂的案例将 HTTP 协议讲解得深入浅出,所以深受开发者喜爱。现在在网上随手一搜都可以找到很多的电子书或者读书笔记,可见该书的畅销程度。 | ||
|
||
我本人由于之前在使用 Nodejs 开发后端项目的时候有过一些障碍(比如 302、301 重定向,401 认证失败、预检请求等等),所以想要找个时间系统的学习一下 HTTP 协议,也作为之后阅读 Nodejs 框架的前瞻;所以 《图解 HTTP》自然而然也就成为了我的首选教材,于是赶紧在网上买了一本,不久之后就诞生了这个系列的读书笔记。说是一个系列,其实就是八篇长度比较适中的文章,**对于书中的内容多半是精简摘抄,有些地方稍微有一点点拓展,所以看过书的童鞋就没有什么必要再浪费时间阅读了**。 | ||
|
||
全书一共有 11 个大章节,其中第一章主要介绍了网络基础知识,包括 HTTP 网络协议的诞生背景、TCP/IP 协议简介、网络协议的分层以及 DNS 服务等等。第二章主要讲解了 HTTP 协议的作用、工作方式以及一些特点。第三章主要讲解 HTTP 报文的结构。第四章主要讲解 HTTP 的一系列状态码,比如 2XX 代表响应成功、3XX 代表重定向、4XX 代表客户端请求错误造成响应失败、5XX 代表服务器错误导致响应失败。第五章主要讲解 Web 服务器的一些概念,比如网关、隧道、代理以及资源缓存等等。第六章主要讲解 HTTP 首部,包括常用的通用、请求、响应、实体首部字段以及一些其他的首部字段,这一章讲解的比较多,所以内容也相对而言比较多。第七章主要讲解 HTTPS 的组成、工作原理以及网络证书等知识,对于使用 Nodejs 开发而言这一节十分重要,尤其是对证书的知识感到困惑的童鞋需要好好阅读一下这一章。第八章主要讲解身份认证,现在多半基于表单认证,主要涉及到 cookie 以及 session 的知识。第九章主要讲解一些从 HTTP 扩展的协议,最重要的是 WebSocket 协议,但是我的笔记中这一章的内容基本没写。第十章主要讲解构建 Web 内容的技术,作为一名前端开发,我很自然的跳过了这一章~~。第十一章主要讲解一些常见的 Web 攻击技术,最常见的有 XSS 跨站攻击、SQL 注入攻击、CSRF 跨站点请求伪造、DoS 攻击等等。 | ||
|
||
我的笔记大概在七章之前是每章一篇 ,然后第十一章单独一篇,中间的两篇被忽略掉了。其中我认为最重要的是第四章 HTTP 状态码、第六章 HTTP 首部、第七章 HTTPS 的知识以及 HTTP 证书的基本原理。总而言之,这是一本关于 HTTP 的相当好的入门书籍,推荐指数五颗星。具体内容还需要大家自己阅读,文章如下: | ||
|
||
* [图解 HTTP 笔记(一)——了解 Web 及网络基础](https://juejin.im/post/5d2f1d59f265da1bbd4bab11) | ||
* [图解 HTTP 笔记(二)——简单的 HTTP 协议](https://juejin.im/post/5d2f1df5f265da1bc4148955) | ||
* [图解 HTTP 笔记(三)—— HTTP 报文内的 HTTP 信息](https://juejin.im/post/5d2f2067f265da1b9163c9d7) | ||
* [图解 HTTP 笔记(四)——HTTP 状态码](https://juejin.im/post/5d2f20b6f265da1bbe5e39dc) | ||
* [图解 HTTP 笔记(五)——Web 服务器](https://juejin.im/post/5d2f2148f265da1bbb041117) | ||
* [图解 HTTP 笔记(六)——HTTP 首部](https://juejin.im/post/5d309279f265da1bb13f6a22) | ||
* [图解 HTTP 笔记(七)——HTTPS](https://juejin.im/post/5d3092d06fb9a07ee63f9d74) | ||
* [图解 HTTP 笔记(八)——常见 Web 攻击技术](https://juejin.im/post/5d309327f265da1b672145d2) | ||
|
||
**所有文章的具体内容都可以在我的 [GitHub](https://github.com/zhongdeming428/MyMemorandum/tree/master/%E5%9B%BE%E8%A7%A3HTTP) 找到,有任何有异议的地方都可以直接评论或者提起 PR**。 | ||
|
||
最后,感谢您的阅读! | ||
|