express+mongodb+nodejs写的一个小小小小登录注册接口

今天看了个express+mongodb+nodejs写的登录注册接口的视频,结果后面越看越迷糊,所以就来自己记录一下,看能不能捋顺点

首先看下项目目录:
express+mongodb+nodejs写的一个小小小小登录注册接口_第1张图片
编辑器是vscode,里面有一个插件Rest Client可以用来发起请求
test.htpp就是配合Rest Client这个插件来用的
models.js 是用来存储模型的文件
server.js 就是入口文件

准备工作

首先要用到nodejs,安装自己安装啦,
通过npm i express@next 下载安装express5
通过npm i mongoose 下载安装mongodb数据库
通过npm i bcryptjs 下载安装加密库
(本来是用bcrypt的,但是报错了,建议能用bcrypt的就用bcrypt吧 npm i bcrypt)
通过 npm i jsonwebtoken 下载安装用来生成token的模块

开始写代码了

首先在server.js文件上引入express框架,创建网站服务器
express+mongodb+nodejs写的一个小小小小登录注册接口_第2张图片
第二步在models.js文件夹里连接数据库,并创建用户集合
express+mongodb+nodejs写的一个小小小小登录注册接口_第3张图片
注意:创建完之后要在server.js里面引入这个文件

 const {User} = require('./models')

第三步可以在server.js文件里面编写注册用户的接口了:
express+mongodb+nodejs写的一个小小小小登录注册接口_第4张图片
注意:由于express默认是没有针对json进行处理的,所以要在上面添加一句:app.use(express.json()) 用来允许express接收客户端传递过来的json数据

然后在test.js文件调用注册用户的接口:
express+mongodb+nodejs写的一个小小小小登录注册接口_第5张图片
注意:每个接口之间用 ### 来分割,然后post请求的话,在传递参数对象的前面要加空行,这个是Rest Client规定的
写好之后点击接口上面的 Send Request 即可执行该接口,在编辑器右边会得到结果:
express+mongodb+nodejs写的一个小小小小登录注册接口_第6张图片
这个时候你查看数据库的话会看到已经有一条数据了。

然后可以写一个查询用户列表的接口:
express+mongodb+nodejs写的一个小小小小登录注册接口_第7张图片
在test.js文件夹下调用:
调用查询用户接口
然后我们编写登录的接口,顺便生成token:
express+mongodb+nodejs写的一个小小小小登录注册接口_第8张图片
注意:这里需要在上面加上这段代码:
引入生成token的插件
哎,这里生成token不是很明白,还是需要查下jsonwebtoken的具体用法才可以。

调用登录接口:
express+mongodb+nodejs写的一个小小小小登录注册接口_第9张图片
返回的结果:看到是有返回token的
express+mongodb+nodejs写的一个小小小小登录注册接口_第10张图片
最后写一个查询个人信息的接口:
查询个人信息接口
由于很多接口都可能需要查询是哪一个用户请求的,所以将查询具体哪一个用户的方法抽取成公共方法:
express+mongodb+nodejs写的一个小小小小登录注册接口_第11张图片
调用查询个人信息接口:
express+mongodb+nodejs写的一个小小小小登录注册接口_第12张图片
这里传递的Authorization 的值前面的Bearer是为了规范加上的,后面的是用户的token,暂时是写死的,具体其实需要通过客户端传递,结果:
express+mongodb+nodejs写的一个小小小小登录注册接口_第13张图片

ok,所有的接口已经写出来了,虽然好像也没捋明白什么,但是好歹也记录了一下,后面还是需要另外去了解生成token具体的用法才可以。

============================ 分割线 ============================

最后完整的截图:

server.js

express+mongodb+nodejs写的一个小小小小登录注册接口_第14张图片
express+mongodb+nodejs写的一个小小小小登录注册接口_第15张图片

models.js

express+mongodb+nodejs写的一个小小小小登录注册接口_第16张图片

test.http

express+mongodb+nodejs写的一个小小小小登录注册接口_第17张图片

你可能感兴趣的:(Mongodb,Nodejs,Express)