资讯专栏INFORMATION COLUMN

nodejs+mongodb构建一个简单登录注册功能

yibinnn / 594人阅读

摘要:搭建简单登录注册还是我又来了近来突然对数据库和后台有点感兴趣就开始了漫长的学习之路想想自己只是一个前端只会斯科瑞普所以就开始看看着看着突然发现和更配哦遂就开了我的之路由于我的表达能力有限下面的文章可能写的不是那么详细有看不懂的可以去我上看源

nodejs+mongodb搭建简单登录注册

biu!biu!biu!还是我又来了!!!
近来突然对数据库和后台有点感兴趣,就开始了漫长的学习之路,想想自己只是一个前端,只会java斯科瑞普,所以就开始看nodejs,看着看着突然发现mongodbnodejs更配哦!,遂就开了我的mongodb之路;由于我的表达能力有限,下面的文章可能写的不是那么详细,有看不懂的可以去我github上看源码,在这附上我github的这个项目的地址,欢迎大家踊跃star的,当是对小白的鼓励! biu!我是链接!

先叙一下mongodb

就超简洁的说一下,mongo就是一个nosql的数据库,不使用sql的语法,当然其实也是大同小异的,增删改查还是差不多的,但是在概念上mongo还是跟mysql有相当大的区别的;比如在mongo中没有表的概念,而是一个集合;由于这些概念性的东西有很多,我在这里给各位附上链接,你们自己看一下biu!我是链接!;

说说我的小demo使用到的一些东西

直接怼package的依赖图片吧

说下各个部分的作用:
express:这就是nodejs的一个web应用的开发框架;
body_parser:这个写nodejs的应该都知道,用于解析客户端请求的body中的内容的一个中间件,因为要用到表单提交,所以需要解析获得的数据;
mongoose:从这个名字就可以知道这个是和mongodb有关系的依赖;这个依赖是nodejs封装用来连接和操作mongodb数据库的;
其余几个我相信各位应该都知道,其实这个我相信我不介绍各位应该也都知道的,原谅我的话痨!!!

列表结构列表

还是直接怼图片吧!实在是不想生成tree了!

其实这是一个很简单的demo!主要还是体验出nodejs对前端静态资源的渲染,以及nodejs的路由,还有其对mongodb的支持!
user.js里面确定了mongoose的一个Schema,也就是写入数据库的格式

var UserSchema = new Schema({
    username : String,
    userpsw : String,
    logindate : Date
})

这样就构建了一个数据模型;

从项目目录上可以看出,我只是写了简单三个页面,其实最最最主要的只是一个文件,app.js;

app.js内容
在这个里面我主要写了关于接受前台传入的数据是怎么存入mongodb的,还有是怎么判断是否已经注册;是否输入了正确的账号密码的;

在这我放一段检测注册的代码,在注册成功后就将用户的信息写入到数据库

app.post("/register",(req, res) => {
    console.log("user in session")
    console.log(req.session);
  //先查询有没有这个user
    console.log("req.body"+req.body);
    var UserName = req.body.username;
    var UserPsw = req.body.password;
    //通过账号验证
    var updatestr = {username: UserName};
    res.setHeader("Content-type","application/json;charset=utf-8")
        console.log(updatestr);
        userSchema.find(updatestr, function(err, obj){
            if (err) {
                console.log("Error:" + err);
            }
            else {
                if(obj.length == 0){
                    insert(UserName,UserPsw); 
                    res.send({status:"success",message:"true"}) 
                }else{
                    res.send({status:"success",message:"false"}) 
                }
            }
        })  
});

这样的话就可以将用户传入的信息存入到数据库了;登录同理,先将传过来的数据在数据库里查询是否已经有,然后再将用户名和密码都一一对比,如果匹配的话就返回登录成功;

说说前端部分
原谅我的表达能力是真的有限,上面的后端各位肯定没怎么看懂,欢迎去观看我的源码;下面来说下我对前端部分的一些处理;
前端部分主要就是在login页,我做了一个cookie的处理,当用户点击保存账户的时候,我就将用户的信息存入cookie下次登录的时候就不用麻烦去输入用户名和密码了;

                     if($("#mycheck").prop("checked")==true){
                      setCookie("username",username,7);
                    }

其实也就是当登录验证成功并且用户check了checkbox的时候将cookie存入;下次登录的时候直接将cookie值解析,然后放入到用户名的input框的value值中!

以上就是我这个小demo的一些内容,表达能力有限,各位有兴趣可以移驾去看看我源码;

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/19042.html

相关文章

  • nodejs+mongodb构建一个简单登录注册功能

    摘要:搭建简单登录注册还是我又来了近来突然对数据库和后台有点感兴趣就开始了漫长的学习之路想想自己只是一个前端只会斯科瑞普所以就开始看看着看着突然发现和更配哦遂就开了我的之路由于我的表达能力有限下面的文章可能写的不是那么详细有看不懂的可以去我上看源 nodejs+mongodb搭建简单登录注册 biu!biu!biu!还是我又来了!!! 近来突然对数据库和后台有点感兴趣,就开始了漫长的学习之...

    BoYang 评论0 收藏0
  • ionic3,nodejs,MongoDB搭建一个移动端项目

    摘要:照例先贴上地址欢迎各位大佬指导就是我我是链接欢迎项目简介首先说下要在本地运行项目的话需要在电脑上安装我的项目也需要一下这里也贴一下地址地址前端部分页面搭建前端的页面搭建和跳转都是使用的的因为开始的仿原生的页面堆栈的概念使得前端制作的难度减少 照例先贴上地址欢迎各位大佬指导 就是我,我是链接 (欢迎star) 项目简介 首先说下要在本地运行项目的话,需要在电脑上安装mongoDB,我的...

    alexnevsky 评论0 收藏0
  • ionic3,nodejs,MongoDB搭建一个移动端项目

    摘要:照例先贴上地址欢迎各位大佬指导就是我我是链接欢迎项目简介首先说下要在本地运行项目的话需要在电脑上安装我的项目也需要一下这里也贴一下地址地址前端部分页面搭建前端的页面搭建和跳转都是使用的的因为开始的仿原生的页面堆栈的概念使得前端制作的难度减少 照例先贴上地址欢迎各位大佬指导 就是我,我是链接 (欢迎star) 项目简介 首先说下要在本地运行项目的话,需要在电脑上安装mongoDB,我的...

    ivydom 评论0 收藏0
  • ionic3,nodejs,MongoDB搭建一个移动端APP

    摘要:照例先贴上地址欢迎各位大佬指导就是我我是链接欢迎项目简介首先说下要在本地运行项目的话需要在电脑上安装我的项目也需要一下这里也贴一下地址地址前端部分页面搭建前端的页面搭建和跳转都是使用的的因为开始的仿原生的页面堆栈的概念使得前端制作的难度减少 照例先贴上地址欢迎各位大佬指导 就是我,我是链接 (欢迎star) 项目简介 首先说下要在本地运行项目的话,需要在电脑上安装mongoDB,我的...

    张汉庆 评论0 收藏0
  • XBlog: Vue+Express+Mongodb的全栈可扩展的完整博客系统

    摘要:注册成功后会返回注册用户的此就是上面说到的,用于用户登陆的基础,请保管好。 地址 https://github.com/billyhoomm...http://blog.billyhu.com 说明(Instructions) 本项目后台基于express、mongodb,前台基于Vue2.0全家桶、bootstrap、scss预编译器以及一众工具类插件 项目前后台代码在同一个目录中...

    Salamander 评论0 收藏0

发表评论

0条评论

yibinnn

|高级讲师

TA的文章

阅读更多
最新活动
阅读需要支付1元查看
<