web服务器,http,nodejs

服务端基础概念

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

URL

在这里插入图片描述
在这里插入图片描述

创建web服务器

在这里插入图片描述
req请求
res响应
在这里插入图片描述
在这里插入图片描述

HTTP协议

在这里插入图片描述
在这里插入图片描述

请求方式

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
打开浏览器控制台中有两个输出
在这里插入图片描述
在这里插入图片描述
点击提交

在这里插入图片描述
在这里插入图片描述
post发送完,表单默认的行为跳转是get方式
在这里插入图片描述
这个时候输入网址打印出get,点击表单中的提交打印出的是post

请求地址

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
获取到了一个/
根据请求地址不同进行响应
在这里插入图片描述
req.header
在这里插入图片描述
在这里插入图片描述
获取具体信息
在这里插入图片描述
在这里插入图片描述

响应报文

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
为什么不显示数字呢

2、内容类型
在这里插入图片描述
在这里插入图片描述
纯文本的响应方式
在这里插入图片描述
在这里插入图片描述
但如果改成中文会有一堆乱码
在这里插入图片描述
在这里插入图片描述

HTTP请求和响应处理

在这里插入图片描述

GET

在这里插入图片描述
在地址栏中,可以通过req.url获得
在这里插入图片描述
可以用字符串截取
也可以用内置模块,
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
转换成对象
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
利用解构
把之前的req.url改成pathname来做判断
在这里插入图片描述

POST请求参数

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
转换成对象,不能用url(处理请求地址的)
用处理请求参数模块
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
不知道算不算成功

在这里插入图片描述

路由

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

静态资源

在这里插入图片描述
在这里插入图片描述
要通过req.url获取到用户的请求路劲defauthtml,转换成真实的服务器路径,读取内容。再返回给客户端
在这里插入图片描述
不希望他带参数,所以用parse方法
在这里插入图片描述
在这里插入图片描述
——dirname两个下划线拼起来
注意标点符号

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
出错处理
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

node.js异步编程

同步API 异步API

在这里插入图片描述
fs是用函数拿到的,前两个通过的是返回值
在这里插入图片描述
before wait last after
before after wait last
这就是异步api
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
异步api不会阻塞后续代码的执行,所以2s后才有msg

回调函数

在这里插入图片描述
callback的实参是函数,就是回调函数,调用传递匿名函数,实际在函数内部调用
在这里插入图片描述
callcack可以传递参数
在这里插入图片描述
如果getdata内部有异步操作,执行完就能调用callback(),把异步api的结果通过参数传递给callback();就能拿到结果了
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
如果嵌套更多层,就成了不可维护代码,回调地狱

Promise

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
链式编程
在这里插入图片描述
ES7中新增了
在这里插入图片描述
异步函数默认的返回值是promise方法
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
抛出错误
在这里插入图片描述

awaite关键字

只出现在异步函数中,await promise可以暂停异步函数 等待promise对象返回结果后再向下执行函数
在这里插入图片描述
这样就不用回调函数了
在这里插入图片描述
在这里插入图片描述

promisify:

改造现有异步函数api,让其返回promise对象,从而支持异步函数语法
在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值