来源于慕课网进击node.js基础
什么是HTTP
计算机之间的通信协议,通常流程为
- HTTP客户端发起请求,创建端口,建立tcp连接
- HTTP服务器在端口监听客户端的请求
- 收到请求后,HTTP服务器向客户端返回状态(200)和内容
单击网址或者刷新页面时,页面渲染过程
- Chrome搜索自身的DNS缓存
- 如果没有找到缓存或者缓存已经失效,搜索OS自身的DNS缓存
- 读取本地的host文件
- 浏览器发起DNS的一个系统调用(向宽带服务商)
宽带运营服务商查看本身的缓存
运营服务商发起迭代DNS解析的请求
找到后,运营商服务器把结果返回OS内核同时缓存起来
OS内核把结果返回浏览器 - 浏览器获得域名对应的IP地址后,发起HTTP的“三次握手”
- TCP/IP连接建立起来之后,浏览器就可以向服务器发送HTTP请求了
- 服务器端收到请求后,把后端处理后的一些结果数据返回给浏览器
- 浏览器解析和渲染此HTML页面
查看Chrome的DNS缓存记录
请求方法
GET:获取数据
POST:向指定资源提交数据
PUT:更新数据
DELETE:删除数据
HEAD:发出请求,区别在于不返回资源
TRACE
OPTIONS
回调函数
将后续逻辑作为函数的参数传入,率先执行.后续逻辑可以是一个函数,也可以是一个匿名函数。
function learn(sth){
console.log(sth);
}
function we(callback, sth){
sth += ' is good!';
callback(sth)
}
//回调函数,一般最后执行
we(learn, 'Node');
//匿名函数
we(function(sth){
console.log(sth);
}, "Java");
同步与异步
同步: 程序的执行顺序与任务的排列顺序是一致的(浏览器端的js是单线程的,顺序执行)
异步: 程序的执行顺序与任务的排列顺序是不一致的、异步的
作用域与上下文
作用域:全局与局部
上下文: this, call, apply
网友评论