HTTP协议基础总结

一、    概述

本文为HTTP经典五层模型和一个完整的响应过程。

二、HTTP基础

1.经典五层网络模型

(1)应用层:为应用软件提供了很多服务,构建于TCP协议之上
(2)传输层:向用户提供可靠的端到端(End-to-End)服务,传输层向高层屏蔽了下层数据通信的细节
(3)网络层:为数据在节点之间传输创造逻辑链路
(4)数据链路层:在通讯实体之间建立数据链路链接
(5)物理层:定义物理设备如何传输数据


2.浏览器输入URL后HTTP请求返回的完整过程

(1)浏览器输入URL后HTTP请求返回的完整过程
Redirect(跳转)-》App cache(应用缓存)-》DNS(DNS查找)-》TCP(TCP创建链接)-》Request(发送请求)-》Response(接受响应)

(2)形象理解(类比去吃饭)
Redirect:决定去哪个饭店吃饭,比如海底捞
App cache:类似脑中缓存。如果之前去过海底捞,我之前的地址就会存储在脑子里,然后我就可以直接去了
DNS:类似高德地图,可以查找具体地址。如果之前没有去过海底捞,我就要查找高德地图,知道海底捞具体地址。
TCP:类似叫服务员点单。我要叫一声:“服务员,点单“(第一次),服务员就走过来,说:” 好的”(第二次)。然后我说:“那我开始点单了”(第三次,确认开始交互)。然后,她就准备开始记录。
Request:类似点的菜单。菜单点好了,服务员就交给厨师了。
Response:类似桌上做好的菜。服务员按照菜单,上了菜,那么我们就可以大快朵颐了!

3.使用node.js构建实例

(1)按装node.js和git(使用gitbash)
node-v10.16.0-x64.msi

(2)使用gitbash查看node.js版本

...... MINGW64 ~
$ node -v
v10.16.0

(3)编写简单http服务:server.js

const http=require('http')

http.createServer(function(request,response){
    console.log('request come',request.url)
    
    response.end('Hello node.js!!!')
}).listen(8888)

console.log('server is listening on 8888 port')

(4)启动服务

...... MINGW64 ....../http
$ node server.js
server is listening on 8888 port

(5)访问服务http://localhost:8888/


 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值