文章目录
nodejs常用模块
1. mysql
-
常用方法
- 数据库对象创建
const db = mysql.createPool({ host: , user: , password: , database: })
- 数据库查询
db.query(查询语句, [占位符对应值], 回调函数)
-
常用属性
- 回调参数results, results.affectedRows → int, results.length → int
-
注意点
- 可以将数据库对象创建的过程封装成自定义模块, 只需对外暴露数据库对象db即可
- 用?作占位符
- 可以传入对象, 一次多个匹配, 减少?的使用, 从而减少语句
- 用标记删除的方式, 可以提高数据库安全
2. 身份认证机制session, cookie, token
- 背景: http协议无状态的特性
- cookie只是一小段身份认证数据(往往是sessionId), 存于客户端, 下次请求时自动携带, 不可跨域
- session是管理会话认证的机制, 存储于服务器端
- token保持服务器端的无状态性, 可以实现避开同源策略
3. 跨域支持 cors
4. 加密/解密 bcryptjs
5. 表单验证规则(joi, @escook/express-joi)
- 验证规则
- 规则对象
- 规则中间件(要在路由前使用)
其他
- 正则表达式数量词{1,5}, 中间不能加空格
- exports和module.exports区别