图解NodeJS实现登录注册功能


Posted in NodeJs onSeptember 16, 2019

该Demo根据菜鸟教程的练手项目,请提前到菜鸟教程的官网查看nodejs的相关教程,根据教程实际操作一遍,然后自己动手去实现登录、注册功能,此Demo只作参考,不符合前端相关规范。

图解NodeJS实现登录注册功能 

使用的技术栈

node+express+mongodb

项目目录结构

  • node_modules: 第三方模块目录
  • public: 公共文件目录(js、css、image)
  • login.html:登录页面
  • register.html:注册页面
  • main.html:主页面
  • db.js:数据库相关封装(数据库添加、查询)
  • login.js:接口启动文件(登录、注册接口)

登录场景

(1)用户名不能为空;

(2)密码不能为空;

(3)用户名和密码不为空的情况下,查询数据库,判断用户是否存在。 如果存在,判断用户名和密码是否一致,一致登录成功;不一致返回用户名或密码错误; 如果不存在,直接返回不存在该用户。

注册场景

(1)用户名不能为空;

(2)密码不能为空;

(3)用户名和密码不为空的情况下,查询数据库,判断用户是否存在。 如果存在,返回该用户已存在,可直接登录; 如果不存在,注册用户,插入数据库。

部分操作演示

登录

图解NodeJS实现登录注册功能 主页
图解NodeJS实现登录注册功能 注册
图解NodeJS实现登录注册功能 插入数据库
图解NodeJS实现登录注册功能

项目初始化

1、新建目录

新建目录,例如:node-login

2、安装express

安装 Express 并将其保存到依赖列表中: 打开cmd命令行,定位到项目目录,使用命令行 cnpm install express --save 如下图:

图解NodeJS实现登录注册功能

以上命令会将 Express 框架安装在当前目录的 node_modules 目录中, node_modules 目录下会自动创建 express 目录。以下几个重要的模块是需要与 express 框架一起安装的:

  • body-parser - node.js 中间件,用于处理 JSON, Raw, Text 和 URL 编码的数据。
  • cookie-parser - 这就是一个解析Cookie的工具。
  • 通过req.cookies可以取到传过来的cookie,并把它们转成对象。
  • multer - node.js 中间件,用于处理 enctype="multipart/form-data"(设置表单的MIME编码)的表单数据。

使用的命令如下:

cnpm install body-parser --save
cnpm install cookie-parser --save
cnpm install multer --save

依赖的模块如图:

图解NodeJS实现登录注册功能 

3、安装MongoDB

使用命令 cnpm install mongodb

4、新建文件夹public

新建public文件夹,用来存放公共文件目录(js、css、image)

5、github地址:node-login,欢迎start。

总结

以上所述是小编给大家介绍的图解NodeJS实现登录注册功能,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!

NodeJs 相关文章推荐
Nodejs爬虫进阶教程之异步并发控制
Feb 15 NodeJs
nodejs 的 session 简单使用
Jun 06 NodeJs
NodeJs模拟登陆正方教务
Apr 28 NodeJs
nodejs简单实现TCP服务器端和客户端的聊天功能示例
Jan 04 NodeJs
nodejs中Express与Koa2对比分析
Feb 06 NodeJs
nodejs使用redis作为缓存介质实现的封装缓存类示例
Feb 07 NodeJs
nodejs实现连接mongodb数据库的方法示例
Mar 15 NodeJs
NodeJs项目中关闭ESLint的方法
Aug 09 NodeJs
nodejs 递归拷贝、读取目录下所有文件和目录
Jul 18 NodeJs
纯异步nodejs文件夹(目录)复制功能
Sep 03 NodeJs
Nodejs监控事件循环异常示例详解
Sep 22 NodeJs
NodeJS开发人员常见五个错误理解
Oct 14 NodeJs
详解NodeJs项目 CentOs linux服务器线上部署
Sep 16 #NodeJs
nodejs一个简单的文件服务器的创建方法
Sep 13 #NodeJs
nodejs的安装使用与npm的介绍
Sep 11 #NodeJs
5分钟教你用nodeJS手写一个mock数据服务器的方法
Sep 10 #NodeJs
NodeJS 文件夹拷贝以及删除功能
Sep 03 #NodeJs
纯异步nodejs文件夹(目录)复制功能
Sep 03 #NodeJs
nodejs文件夹深层复制功能
Sep 03 #NodeJs
You might like
PHP SESSION的增加、删除、修改、查看操作
2015/03/20 PHP
PHP编程开发怎么提高编程效率 提高PHP编程技术
2015/11/09 PHP
CI(CodeIgniter)框架实现图片上传的方法
2017/03/24 PHP
最近项目写了一些js,水平有待提高
2009/01/31 Javascript
Jquery 学习笔记(一)
2009/10/13 Javascript
jquery实现一个简单好用的弹出框
2014/09/26 Javascript
AngularJS内置指令
2015/02/04 Javascript
百度UEditor编辑器如何关闭抓取远程图片功能
2015/03/03 Javascript
JavaScript知识点整理
2015/12/09 Javascript
JavaScript事件详细讲解
2016/06/27 Javascript
微信小程序 框架详解及实例应用
2016/09/26 Javascript
老生常谈jacascript DOM节点获取
2017/04/17 Javascript
利用prop-types第三方库对组件的props中的变量进行类型检测
2017/05/02 Javascript
JS实现定时任务每隔N秒请求后台setInterval定时和ajax请求问题
2017/10/15 Javascript
微信小程序学习笔记之本地数据缓存功能详解
2019/03/29 Javascript
了解JavaScript函数中的默认参数
2019/05/30 Javascript
layui自己添加图片按钮并点击跳转页面的例子
2019/09/14 Javascript
js实现登录时记住密码的方法分析
2020/04/05 Javascript
vue+koa2搭建mock数据环境的详细教程
2020/05/18 Javascript
JS禁用右键、禁用Ctrl+u、禁用Ctrl+s、禁用F12的实现代码
2020/12/01 Javascript
python Django连接MySQL数据库做增删改查
2013/11/07 Python
python实现定制交互式命令行的方法
2014/07/03 Python
使用python调用zxing库生成二维码图片详解
2017/01/10 Python
Python内置函数 next的具体使用方法
2017/11/24 Python
使用python获取csv文本的某行或某列数据的实例
2018/04/03 Python
python多线程并发让两个LED同时亮的方法
2019/02/18 Python
Python将json文件写入ES数据库的方法
2019/04/10 Python
Django的CVB实例详解
2020/02/10 Python
Python定时器线程池原理详解
2020/02/26 Python
很酷的小工具和电子产品商城:GearBest
2016/11/19 全球购物
英国时尚配饰、珠宝和服装网站:KJ Beckett
2020/01/23 全球购物
高中生自我评价个人范文
2013/11/09 职场文书
人事文员岗位职责
2014/02/16 职场文书
公司备用金管理制度
2015/08/04 职场文书
确保减税降费落地生根,用实实在在措施
2019/07/19 职场文书
Python集合set()使用的方法详解
2022/03/18 Python