我转过几个弯 绕过那个小雨楼
拿着蒲扇摆着衣衫渡着紧箍咒
不问天涯不停留 喝过几壶酒
不过年少白头道义放胸口
倘若明天之后 遥看前尘剑封侯
似那天上神仙无所求
朝朝暮暮君如梦醒十分不为何理由
是真是假是惶恐是无休
路过这风雨花满楼 片刻都不停留
我本这书生进京赶考留下许多愁
你问有没有时候 我叹这天道默悠悠
能否与我一醉方休
又过了几个弯 算尽天量道莫慌
踏这田园闻这芳草香
跌跌撞撞仗剑天涯折煞不枉无笔良
是梦是幻是温柔是家乡
路过这风雨花满楼 片刻都不停留
我本这书生进京赶考留下许多愁
你问有没有时候 我叹这天道默悠悠
能否与我一醉方休
路过这风雨花满楼 片刻都不停留
我本这书生进京赶考留下许多愁
你问有没有时候 我叹这天道默悠悠
能否与我一醉方休
谁能与我一醉方休
koa教程2 密码加密
默认情况下,我们通过User.create({ email, password, nickname });
模型传入的数据,是无加密的,也就是说,在数据库中密码是明文显示的,这样肯定是不行,我们需要使用bcrypt
插件进行加密
yarn add bcryptjs --dev
打开models/user.js
user.js:
const bcrypt = require("bcryptjs");
const { sequelize } = require(`${process.cwd()}/core/db`);
const { Sequelize, Model, DataTypes } = require("sequelize");
class User extends Model {
};
User.init({
id: {
type: DataTypes.INTEGER,
primaryKey: true, //主键
autoIncrement: true, //自增
},
nickname: DataTypes.STRING,
email: {
type: DataTypes.STRING(128),
unique: true, //唯一
},
password: {
type: DataTypes.STRING,
set(val) {
console.log(val)
const salt = bcrypt.genSaltSync(10);
const psw = bcrypt.hashSync(val, salt);
this.setDataValue('password', psw);
}
},
openid: {
type: DataTypes.STRING(64),
unique: true, //唯一
},
}, {
sequelize,
tableName: "user", //指定生成的表名
});
module.exports = {
User
}
password有一个set方法,有set自然有get,这个以后再说,set接受一个参数,就是你要设置的值,我们将其加密后,通过this.setDataValue('password', psw);
进行保存,一定要传入第一个参数,也就是你要设置的字段名,虽然是在password属性下,但是还是要设置,否则数据库中保存不了这个值。
保存后我们进行注册,可以看到如下内容:
这样一个加密就做好了。
0
评论(0)