TypeError:回调不是函数,“node_modules\jsonwebtoken\sign

当我在 Postman 中执行注册操作时,控制台中出现以下错误:


错误:


TypeError: 回调不是函数,node_modules\jsonwebtoken\sign.js:101:14)


问题出在这一行:


const token = jwt.sign({name, email, password}, process.env.JWT_SECRET, process.env.JWT_ACCOUNT_ACTIVATION, {expiresIn: '10m'});

控制器/认证


const User = require('../models/user');

const jwt = require('jsonwebtoken');


exports.signup =  (req, res) => {

    const {name, email, password} = req.body;


    User.findOne({email}).exec((err, user) => {

        if (user) {

            return res.status(400).json({

                error: "Email is taken"

            })

        }


        const token = jwt.sign({name, email, password}, process.env.JWT_SECRET, process.env.JWT_ACCOUNT_ACTIVATION, {expiresIn: '10m'});

    });

};

更新


当我删除process.env.JWT_SECRET时,它可以工作。我必须使用process.env.JWT_SECRET吗?


婷婷同学_
浏览 106回答 2
2回答

米琪卡哇伊

用 process.env.JWT_ACCOUNT 交换 process.env.JWT_SECRET 的位置,反之亦然

慕桂英4014372

jwt.sign 基本上接受四个参数有效载荷秘密选项回调函数如果您在这种情况下更改订单,您将收到此错误
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript