为了账号安全,请及时绑定邮箱和手机立即绑定

node建站攻略(二期)——网站升级

Scott 全栈工程师
难度高级
时长 6小时 0分
学习人数
综合评分9.50
56人评价 查看评价
10.0 内容实用
9.5 简洁易懂
9.0 逻辑清晰
全部跟完啦!撒花!
https://github.com/chenyeqing/movie_node-mongo
欢迎大家交流指正
mocha的教程:
http://www.ruanyifeng.com/blog/2015/12/a-mocha-tutorial-of-examples.html
谢谢老师的教学谢谢!
这个帖子里有人回答貌似说,bcrypt在加盐hash的时候,会把盐作为明文合并到最终的hash密码里,在比较的时候从这个最终hash密码里面提取盐,再加到明文密码里面做比较,而不是之前猜想的再生成新的随机盐。此处还说明,这种方式只适用于加密也是使用bcrypt的情况,所以估计是bcrypt的内部机制使得它能够从最终hash密码里面提取盐吧。不知道我这么理解对不对,这里scott应该讲解下。
对比较的代码比较好奇,用明文密码和加盐后的hash密码比较,为啥可以通过。就算比较方法内部生成了随机的盐,然后拼上它去比较,那又是如何做到这个随机盐和注册时候的随机盐一直的呢?google了一下,看到这个:
http://stackoverflow.com/questions/13023361/how-does-node-bcrypt-js-compare-hashed-and-plaintext-passwords-without-the-salt
关于mongodb的$inc
http://jzfjeff.blog.51cto.com/1478834/999314
报 MongooseError: Comment validation failed 错误的看看你的CommentSchema是不是打错了
//在新分类中添加该电影
Category.findById(newCategory,function(err,category){
if(err){
console.log(err)
}

category.movies.push(movie._id)

category.save(function(err,category){
res.redirect('/movie/'+movie._id)
})
})

})
}else{
res.redirect('/movie/'+movie._id)
}
//更新category表
if(oldCategory!=newCategory){
Category.findById(oldCategory,function(err,category){
//清除原分类中的此电影
for(var i=0;i<category.movies.length;i++){
if(category.movies[i]==id){
category.movies.splice(i,1);//从第i个元素开始,删除一个元素
break;
}
}
category.save(function(err,category){})
马上就跟完课程啦~希望就在前方~~
源码地址:
https://github.com/piaohan/imocc-nodejs_mongodb
bcrypt好坑啊,装上后报错,最后还得用crypto
老师真心厉害
报 MongooseError: Comment validation failed 错误的试试把页面里的
#{user._id} 改为 user._id
pug 语法变了
老师太厉害了!!!
课程须知
本课程针对从事前端开发 2~3 年,前端知识结构良好,对基础的nodejs/express等相关后端知识有所了解,但缺乏实际项目经验的中级前端工程师。
老师告诉你能学到什么?
1、express后台框架的深入使用 2、mongodb中关联文档的设计与查询 3、jade模板引擎的深入使用 4、前后端数据传递与视图展现的流程 5、借助会话与cookie进行用户识别和持久化 6、如何利用表单做图片的上传 7、测试框架mocha的安装及测试用例编写

微信扫码,参与3人拼团

意见反馈 帮助中心 APP下载
官方微信
友情提示:

您好,此课程属于迁移课程,您已购买该课程,无需重复购买,感谢您对慕课网的支持!

本次提问将花费2个积分

你的积分不足,无法发表

为什么扣积分?

本次提问将花费2个积分

继续发表请点击 "确定"

为什么扣积分?

举报

0/150
提交
取消