图解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教程之异步I/O
Nov 21 NodeJs
Nodejs关于gzip/deflate压缩详解
Mar 04 NodeJs
NodeJS远程代码执行
Aug 28 NodeJs
Nodejs下DNS缓存问题浅析
Nov 16 NodeJs
nodejs 搭建简易服务器的图文教程(推荐)
Jul 18 NodeJs
详解IWinter 一个路由转控制器的 Nodejs 库
Nov 15 NodeJs
手把手教你如何使用nodejs编写cli命令行
Nov 05 NodeJs
NodeJs生成sitemap站点地图的方法示例
Jun 11 NodeJs
监控Nodejs的性能实例代码
Jul 02 NodeJs
NodeJS开发人员常见五个错误理解
Oct 14 NodeJs
nodejs中内置模块fs,path常见的用法说明
Nov 07 NodeJs
nodeJs项目在阿里云的简单部署
Nov 27 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
抓取YAHOO股票报价的类
2009/05/15 PHP
PHP图片处理类 phpThumb参数用法介绍
2012/03/11 PHP
PHP内置过滤器FILTER使用实例
2014/06/25 PHP
php绘图之在图片上写中文和英文的方法
2015/01/24 PHP
老生常谈PHP 文件写入和读取(必看篇)
2017/05/22 PHP
window.dialogArguments 使用说明
2011/04/11 Javascript
Jjcarousellite 实现图片列表滚动的简单实例
2013/11/29 Javascript
js实现内容显示并使用json传输数据
2016/03/16 Javascript
简单谈谈Javascript函数中的arguments
2017/02/09 Javascript
前端构建工具之gulp的语法教程
2017/06/12 Javascript
浅谈Vue.js中的v-on(事件处理)
2017/09/05 Javascript
基于BootStrap的文本编辑器组件Summernote
2017/10/27 Javascript
微信小程序实现简单input正则表达式验证功能示例
2017/11/30 Javascript
javascript实现对话框功能警告(alert 消息对话框)确认(confirm 消息对话框)
2019/05/07 Javascript
使用vuex解决刷新页面state数据消失的问题记录
2019/05/08 Javascript
解决vue单页面应用进入页面加载所有 js 的问题
2020/08/12 Javascript
python根据距离和时长计算配速示例
2014/02/16 Python
在Python中利用Into包整洁地进行数据迁移的教程
2015/03/30 Python
Python中的模块和包概念介绍
2015/04/13 Python
Android 兼容性问题:java.lang.UnsupportedOperationException解决办法
2017/03/19 Python
Python面向对象类继承和组合实例分析
2018/05/28 Python
python用win32gui遍历窗口并设置窗口位置的方法
2019/07/26 Python
pygame实现五子棋游戏
2019/10/29 Python
在Python中利用pickle保存变量的实例
2019/12/30 Python
python 绘制正态曲线的示例
2020/09/24 Python
pycharm + django跨域无提示的解决方法
2020/12/06 Python
Python 生成短8位唯一id实战教程
2021/01/13 Python
CSS3 对过渡(transition)进行调速以及延时
2020/10/21 HTML / CSS
使用placeholder属性设置input文本框的提示信息
2020/02/19 HTML / CSS
管理失职检讨书
2014/02/12 职场文书
标准毕业生自荐信
2014/06/24 职场文书
水利水电建筑施工应届生求职信
2014/07/04 职场文书
学校会议通知范文
2015/04/15 职场文书
ORACLE数据库对long类型字段进行模糊匹配的解决思路
2021/04/07 Oracle
JavaScript 防篡改对象的用法示例
2021/04/24 Javascript
企业版Windows 11有哪些新功能? Win11适用于企业的功能介绍
2021/11/21 数码科技