控制台错误:TypeError:jwt.sign 不是函数
在我的 package.json 中使用 "type": "module" 尝试最新的 Node 版本 13。到目前为止一切都很顺利,直到我尝试使用“jsonwebtoken”添加令牌身份验证。不确定这是我的代码问题还是兼容性问题?使用他们的 ES 模块与我在 React 中使用的有一些不同。
创建新的令牌辅助函数
import * as jwt from 'jsonwebtoken'
export const newToken = user => {
return jwt.sign({id: user.id}, JWT_SECRET, {
expiresIn: '1d'
})
}
Run Code Online (Sandbox Code Playgroud)
注册功能
export const signup = async (req, res, next) => {
// ...
try {
//.. create user code ..
const user = new User({email, password})
user.save()
const token = newToken(user)
return res.json({token, user})
} catch (error) {
console.error(error)
res.status(500).send('Server Error') …Run Code Online (Sandbox Code Playgroud)