请稍等 ...
×

采纳答案成功!

向帮助你的同学说点啥吧!感谢那些助人为乐的人

它显示查询成功,但没内容


https://img1.sycdn.imooc.com//szimg/6090e2370896664815530767.jpg
是我数据库密码没加密吗?这数据库的user是我自己创建的,内容也是自己加的,但是密码没加密,数据库请问怎么加密?

https://img1.sycdn.imooc.com//szimg/6090e2b608052aa106920497.jpg

正在回答 回答被采纳积分+3

3回答

扬_灵 2021-05-04 21:41:09

同学你好,首先,数据库是提供了加密的方式的,下面给的文档是数据库加密的文档地址,但是我们课程中并没有使用数据库加密方式,课程项目中的加密是通过crypto插件封装md5函数实现的。

你在表中添加了一个新的admin用户调用课程的登录接口时会先对密码进行加密处理后再向数据库中查询,里面也显示了加密后的密码这个和数据库中存储的密码不一致才会没有查询结果,造成这个问题的原因是没有对用户的密码进行加密,而这里的加密方式不能通过数据库加密的方式实现,数据库加密和课程中的加密方式不同生成的password字段也是不一样的,
如果你想添加一个新用户可以新建一个注册接口,在注册接口中对用户的密码进行加密处理后存储。注册的逻辑是获取用户输入的用户名和密码,先判断用户名在数据库中是否存在,如果不存在就添加,密码的加密就直接调用下面这句代码进行处理就行了。然后通过INSERT INTO 添加新用户。

const password = md5(`${req.body.password}${PWD_SALT}`)

后面我们课程会增加权限管理的内容,里面有增加用户的逻辑。

0 回复 有任何疑惑可以回复我~
  • 提问者 Decadez #1
    就是说,如果我不用课程的book数据库,就要用自己新建的数据库,多开发一个注册接口,然后注册接口判断前端提交的用户和密码,是否存在在数据库中,如果没有就通过视频的方法加密并存在数据库中,然后登录接口就可以把前端提交过来密码加密后再和注册接口存储在数据库密码是否匹配,我这逻辑没问题吧?
    回复 有任何疑惑可以回复我~ 2021-05-06 01:30:17
  • 扬_灵 回复 提问者 Decadez #2
    同学你好,这里和使不使用book数据库没有关系,注册接口添加到用户表中也是可以的,“然后注册接口判断前端提交的用户和密码,是否存在在数据库中,如果没有就通过视频的方法加密并存在数据库中”这个就是在用户表中新添加一个用户。是的,逻辑是对的。
    回复 有任何疑惑可以回复我~ 2021-05-06 08:44:30
  • 提问者 Decadez 回复 扬_灵 #3
    关键是,我不使用视频中book数据库,用我自己的数据库用户表,当我前端提交后,node加密后查询到数据库,不匹配,因为我的数据库的密码一开始就没加密
    回复 有任何疑惑可以回复我~ 2021-05-06 10:07:02
提问者 Decadez 2021-05-04 20:47:52


https://img1.sycdn.imooc.com//6091426100011e9e03600780.jpg
视频是采用哪种加密方式?

0 回复 有任何疑惑可以回复我~
扬_灵 2021-05-04 20:33:50

同学你好,数据库加密可以参考一下这篇文档https://blog.csdn.net/paul123456789io/article/details/53081921

0 回复 有任何疑惑可以回复我~
  • 提问者 Decadez #1
    你好,我刚刚看了这篇文章,那视频中是采用文章中的哪种加密方式?
    回复 有任何疑惑可以回复我~ 2021-05-04 20:48:35
问题已解决,确定采纳
还有疑问,暂不采纳
意见反馈 帮助中心 APP下载
官方微信