目的是为了更白话的认识 http,面对业内人,还有一些吃瓜的 …
故事背景描述:
男猪脚在情人节这天给他女票发送了一条信息,“I love U”,女主角收到后很开心,也回复了一条信息,“me too”。
故事很简单,就酱。现在用这个简单的故事和 http 协议通信匹配上。
男主(客户端 )发微信(get 请求)给女票(URI)告诉她这是个纪念日专版(Http/1.1)的信息,对女票说“I love U”( 请求主体)。
女主(服务器)很开心,她知道这个是纪念日专版(Http/1.1)的信息, 她收到了(200 OK),并且回复说“me too”(响应主体)。
到这里男女主角的一次信息交流就结束了。上面的故事没有涉及到请求首部和响应首部,因为这些是可选的通信参数,如果把这些可选的参数也加入爱情故事,我是这样胡扯的。
请求首部字段:
- content-length:8,这里表示“I love U”的内容字符长度是 8 个
- User-Agent: Mozilla/5.0 (Win… , 可以表示 微信设置,发送特殊字段时候,界面就有相关的表情弹出(亲亲,抱抱,花等)
- …
响应首部字段:
- Date:Wed, 12 Jun 2019 13:13:14 GMT,这里表示女主发送信息的时间是 13:14
- Server: nginx,这里是她的微信客户端
- Content-Length: 6,这里也可以表示她回复 ”me too” 信息字符串长度。
- …
但是,这样一个节日互表心意的信息,有问题:
- 真的可以如期如愿传递到对方的手里吗?
- 女主接受的信息确定是他男票发来的,而不是第三者发来的骚扰信息?
- 她男票发送的信息,确定是“表白”而不是“分手”?
下篇,谁为你的“http 爱情”保驾护航。