关于博客项目的登录接口测试总是状态码500,代码中导入的数据库,数据库模型index中包含User
附上终端截图和代码片段
登录接口核心代码如下
var express = require('express');
var router = express.Router();
// 引入数据库设计模型
let { } = require('../models/index');
// 登录请求
let jwt = require("jsonwebtoken");
router.get("/", function (req, res, next) {
console.log(req.query);
let { username, password } = req.query;
// 若有此用户存在
User.findOne({ username, password }).then((r) => {
console.log(r);
});
//如果登录成功,返回jwt,并且在token中存入用户名
if (req.query.username == "lisa" && req.query.password == "123456") {
let token = jwt.sign({ username: "zhangsan" }, "tianxiadiyiwudi666", {
expiresIn: '360s',
algorithm: "HS256",
});
res.json({
code: 1,
msg: '登录成功 ',
token,
});
} else {
res.json({
code: 0,
msg: '登录失败',
});
}
});
module.exports = router;
引入的index文件代码如下
//引入模块
let mongoose = require('mongoose');
//连接数据库
mongoose.connect('mongodb://127.0.0.1/blog').then(res => {
console.log('连接数据库成功');
}).catch((err) => {
console.log("链接数据库失败");
});
//获取创建集合的模块
let Schema = mongoose.Schema;
//用户表
let userSchema = new Schema(
{
username: {
type: String,
unique: true,//唯一
require: true,//必填
},
password: String,
nickname: String,
headImgUrl: String,
userID: String,
},
{
timestamps: true,//启用时间戳
});
let User = mongoose.model("User", userSchema);
//文章表
let ArticleSchema = new Schema(
{
title: String,
content: String,
tag: String,
//文章表中存入作者的id,关联了用户表中的id
author: { type: Schema.Types.ObjectId, ref: 'User' },
views: {
type: Number,
default: 0,
},
},
{
timestamps: true,
},
)
//关联查询,虚拟字段
ArticleSchema.virtual("coms", {
ref: "Comment",
localField: "_id",
foreignField: "article_id",
justOne: false,
count: true,
});
ArticleSchema.set("toObject", { virtuals: true });
ArticleSchema.set("toJSON", { virtuals: true });
let Article = mongoose.model("Article", ArticleSchema);
// 评论表
let CommentSchema = mongoose.Schema(
{
content: String,
article_id: { type: Schema.Types.ObjectId, ref: "Article" },
reply_user_id: { type: Schema.Types.ObjectId, ref: "User" },
},
{
timestamps: true,
}
);
var Comment = mongoose.model("Comment", CommentSchema);
module.exports = {
Comment, Article, User
}