Javascript 如何生成令牌?

Javascript 如何生成令牌?,javascript,node.js,express,jwt,bcrypt,Javascript,Node.js,Express,Jwt,Bcrypt,我试图在用户创建帐户时生成一个令牌,但我似乎得到了一个空集?有什么不对劲吗?语法有问题吗 这是控制器文件: 以下是帮助程序utils文件: 这是我用来生成令牌的函数的文件 import bcrypt from 'bcrypt'; import jwt from 'jsonwebtoken'; const Helper = { generateToken(id) { const token = jwt.sign(id, process.env.SECRET, { expiresIn

我试图在用户创建帐户时生成一个令牌,但我似乎得到了一个空集?有什么不对劲吗?语法有问题吗

这是控制器文件:

以下是帮助程序utils文件: 这是我用来生成令牌的函数的文件

import bcrypt from 'bcrypt';
import jwt from 'jsonwebtoken';

const Helper = {

  generateToken(id) {
    const token = jwt.sign(id, process.env.SECRET, { expiresIn: '7d' });
    return token;
  },
};

export default Helper;

我相信你的身份证必须是一个物体。 从:

试一试


有什么错误吗?是否检查了行[0].id中是否有值?您是否检查process.env.SECRET是否有值?您的用户是否插入到数据库中?这里的id是什么类型的值?@sawim yes itis@MarkMeyer我用uuidHey生成了一个密码。嘿,我实际上没有一个密钥,我真傻。谢谢
import bcrypt from 'bcrypt';
import jwt from 'jsonwebtoken';

const Helper = {

  generateToken(id) {
    const token = jwt.sign(id, process.env.SECRET, { expiresIn: '7d' });
    return token;
  },
};

export default Helper;
var token = jwt.sign({ foo: 'bar' }, 'shhhhh');
var token = jwt.sign({id: id}, process.env.SECRET, {expiresIn: '7d'});