nodejs学习重点二

本文介绍了Node.js中的crypto模块,包括哈希算法(如MD5、SHA1、SHA256、Hmac)和对称加密算法AES。接着讨论了事件驱动模型在Node.js中的应用,以及一个使用事件驱动重构的美女图片爬虫项目案例。最后,讲解了ORM框架Mongoose,用于简化MongoDB的操作,包括连接数据库、模型定义和增删改查等。
摘要由CSDN通过智能技术生成

1. crypto加密

NodeJs的crypto模块提供了哈希,加密相关的功能支持。

哈希算法:MD5,SHA1,SHA256,Hmac

哈希算法用来对数据进行签名,确定数据的唯一性,以及是否被篡改。由于其过程不可逆,也常常用来对用户密码进行加密。如果不放心, 可以给个加盐操作

Hmac是基于key和hash的认证算法。它在上面哈希算法的基础上,再传入一个key。只要key变化,即使输入同样的数据也会得到不同的结果。可以将Hmac理解为随机数增强的哈希算法。

对称加密算法:AES

AES是一种常用的对称加密算法,加解密都用同一个密钥。不安全, 可逆, 不建议对用户使用. node的算法标准是aes192

2. event事件驱动

大多数 Node.js 核心 API 都采用惯用的异步事件驱动架构,其中某些类型的对象(触发器)会周期性地触发命名事件来调用函数对象(监听器)。例如,fs.ReadStream会在文件被打开时触发事件;stream 会在数据可读时触发事件。

用法如下:

  const EventEmitter = require('events')
  class MyEmitter extends EventEmitter{}
  ​
  const myEmitter = new MyEmitter()
  // 注册xxx事件
  myEmitter.on('aaa', (a)=>{
      console.log('
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值