Javascript 使用res.render时未定义用户
在nodejs应用程序上工作,其中有一个发布作业>提交付款>渲染成功页面的流程。从表单中获取数据以发布作业时,我将创建一个条带PI,在mongodb中创建一条记录,然后使用Javascript 使用res.render时未定义用户,javascript,node.js,jwt,ejs,Javascript,Node.js,Jwt,Ejs,在nodejs应用程序上工作,其中有一个发布作业>提交付款>渲染成功页面的流程。从表单中获取数据以发布作业时,我将创建一个条带PI,在mongodb中创建一条记录,然后使用res.render作为签出页面 我面临的问题是,当我发布表单并呈现签出页面时,它会返回未定义用户。我在partials/header中有一个全局头,如果有用户登录或未通过登录,该全局头会有条件地呈现。在所有其他页面上,标题都按预期工作,但当我实现这个res.render函数时,它根本无法识别 我在app上有一个checkUs
res.render
作为签出页面
我面临的问题是,当我发布表单并呈现签出页面时,它会返回未定义用户
。我在partials/header
中有一个全局头,如果有用户登录或未通过
登录,该全局头会有条件地呈现。在所有其他页面上,标题都按预期工作,但当我实现这个res.render
函数时,它根本无法识别
我在app上有一个checkUser
中间件代码>,它已经检查用户在访问任何页面时是否存在,并且标题同样适用于所有其他页面,但我现在尝试实现的页面除外。我的checkUser中间件正在使用JWT,并通过res.locals.user
设置用户
我的工后管理员:
module.exports.postJob = async (req, res) => {
//read body data
try {
//Create a stripe PI:
//create mongodb record
//render checkout where my issue exists
res.render('checkout', {
jobId: job._id,
companyName: companyName,
companyContact: cardholderName,
companyEmail: companyEmail,
total: 10,
intentSecret: paymentIntent.client_secret,
});
} catch (err) {
console.log('Error! ', err.message);
}
};
如果我只传递类似于user:'user'
的任何内容,签出页面将呈现良好效果,但标题中的数据为空。如果我将标题更改为使用locals.user
我会收到一个cookies is not defined错误,并且它会在最初工作的页面上每隔一页中断一次
对于jwt和node来说还是相当新的,所以我不确定我需要如何构造它,以便它能够像在应用程序中的所有其他页面上一样工作