我正在做一个电子商务网站,让你订购产品,并让你在付款前在一个表单中填写客户信息(姓名、电子邮件、卡信息等)。当他们填写表格并点击 "支付 "时,它会发送一个POST请求,在那里进行实际的收费。
router.post("/pay", async (req, res) => {
// Charging Code Here
...
// Charging Code Here
var name = req.body.name;
var email = req.body.email;
var number = req.body.number;
});
在收费之后,我想从表单中提取信息,就像上面做的那样,然后发送一个GET请求,在那里我可以渲染一个页面,我可以使用POST路径中的变量在新页面上显示客户信息。
router.get("/confirmation", function(req, res, next) {
res.render("confirmation.ejs", { name:name, email:email, number:number });
});
说了这么多,我怎样才能把POST路由中的姓名、电子邮件和号码变量在GET路由中使用呢?我不想把客户信息存储在数据库中,因为我希望每个人都能在没有建立某种账户的情况下下单。
你可以做的是在GET方法中传递变量作为请求,比如。
router.get("/confirmation/:name/:email/:number", function(req, res, next) {
res.render("confirmation.ejs", { name:req.name, email:req.email, number:req.number });
});