美文网首页
HTTP学习笔记(1)

HTTP学习笔记(1)

作者: Who_I_am | 来源:发表于2016-11-28 23:16 被阅读0次

最近工作有点闲。一直想着充实下自己。正好在知乎上有人推荐了HTTP权威指南这本书。


之所以选择学习HTTP,是因为某种程度上工作需要罢了。最近一段时间一直在自学Python,需要写爬虫搜集各大招聘网站的招聘信息。但是我本人对网络的机理一无所知,导致经常知其然而不知其所以然。数学专业出身的我,最讨厌的就是这点了。

HTTP,简单点说,是应用层的协议,基于TCP所在的传输层。按照书中的总结:TCP负责,1)无差错的数据传输,2)按序传输,3)未分段的数据流。而HTTP呢?我的理解是,感觉就像是两国之间的贸易公司。要么你下单,我按照你的要求发送货物。要么我下单,你按照我的要求来发送货物。而TCP协议则是航运公司,只负责运输货物。

在现实中,贸易公司下单,发货,双方需要填写订单,发货清单。同理,在网络中,双方也需要遵循类似的流程,用来规范双方。这个流程就是请求和响应的报文。

HTTP报文是由一行一行的字符串组成的[就像我们平常会把文字和数字区分开来一样,计算机语言也会有相似的区分。一般是字符串(既文本),整数,浮点数(小数)等]。

HTTP的报文格式如下:

请求报文:

  • GET /writer#/notebokks/88888/notes.txt HTTP/1.0
  • Accept:text/*
  • Accept-Language:en,fr

响应报文:

  • HTTP/1.0 200 OK
  • Content-type:text/plain
  • Content-length:19
  • Hi! Welcome to my Blog!

我们首先看请求报文请求报文一般是客户端,也就是你的浏览器发送给服务器的报文。GET很好理解哈。这是一个请求的命令。好比意思是说:“XXX,我文件丢在这个地方( /writer#/notebokks/88888/notes.txt)了,你把它发给我。记得是扫描后快递给我(HTTP/1.0),记得是文字哈(text),英文或者法文版的(en,fr)。不要拍照片给我哈。谢谢啦”。

当然,除开GET,还有许多其他请求命令。比如POST,PUT,DELETE,HEAD。 不过,比较常用的是GET和POST。

POST就是:你突然接到一个电话,是你老婆打来的,“老公,我最近看上了一个包包,有点儿贵。那个,你卡号是多少来着?” 。 “那个,咳,对,我卡号是多少来着?你让我想想哈。喂!喂!你听的到吗?喂!嘟!嘟!嘟!”

言归正传哈,毕竟是你老婆,卡号还是要给的。毕竟你老婆是你的,她的包也是你的,不过是左手和右手的关系。这么想,心情是不是突然好一点儿了啦。

言归正传2.0

HTTP服务器(支持HTTP协议的服务器)接受到来自你的请求后,当然不能坐视不理,只能立马按照你的要求将你需要的资源(文本,图片,视频等)按照你要求的协议版本(HTTP/1.0)发给你。这就是所谓的响应报文.

那个,咳,Hi! Welcome to my Blog! 这就是服务器快递给你的作业内容,虽然是英文的,但是也忒简单了点吧?也就比Hello World稍微复杂点。你英语老师是教体育的吧?

好吧!这就是HTTP权威指南的第一章。

难道第一章就这么点内容吗?

当然不是。

虽然第一章的标题叫HTTP概述,但是:

我的这个叫Preview of HTTP概述。

相关文章

  • HTTP学习笔记#1

    一、 了解网络基础 web是使用一种名为HTTP(HyperText Transfer Protocol,超文本传...

  • HTTP学习笔记(1)

    最近工作有点闲。一直想着充实下自己。正好在知乎上有人推荐了HTTP权威指南这本书。 之所以选择学习HTTP,是因为...

  • HTTP学习笔记1:HTTP报文

    一、基本概念 HTTP通信过程包括从客户端发往服务器端的请求及从服务端返回客户端的响应。用于HTTP协议交互的信息...

  • HTTP协议学习笔记(1)

    先来看看MDN给出的定义: 超文本传输​​协议(HTTP)是一个用于传输超媒体文档(例如 HTML)的应用层协议。...

  • go http学习笔记

    go http学习笔记 @[goweb, go, http] 1.go http基础 go http服务器简例 h...

  • 了解Http

    http学习笔记 1. 什么是Http? Hypertext Transfer Protocol-超文本传输协议 ...

  • redis学习视频及个人笔记

    学习视频:http://pan.baidu.com/s/1c207XBU 笔记:http://pan.baidu....

  • OkHttp学习笔记1--Calls

    okhttp学习笔记1--Calls Calls The HTTP client’s job is to acce...

  • RYF javascript笔记1

    标签: 我的笔记 ---学习资料:http://javascript.ruanyifeng.com/ 1. 导论 ...

  • http系统学习笔记(1)

    1.URI我们打开的每个链接都成为一个uri,例如 http://www.baidu.com 第一个代表了约束:h...

网友评论

      本文标题:HTTP学习笔记(1)

      本文链接:https://www.haomeiwen.com/subject/bwtapttx.html