Express - 如何在不使用查询字符串参数的情况下将数据传递给模型
Express - How do I pass data to the model without using query string parameters
所以,我有两个控制器,authController
和 onboardingController
。 authController 通过此行与 onboardingController 通信:
res.redirect('/onboarding/info?profileId=' + profile.id + '&emailAddress=' + profile.emails[0].value)
onBoardingController 接收查询字符串参数并将它们转换为在呈现相应页面时可访问的元数据:
model.profile = { id: req.query.profileId, email: req.query.emailAddress };
res.render('onboarding/missingInfo', model);
现在,由于 onboardingController 中的 model.profile
不知道来自 authController 的实际配置文件数据背后的上下文,我只想到通过查询字符串传递和接收数据。有没有其他方法可以做到这一点,因为在 URL 中有一个电子邮件地址会使它看起来很奇怪。
编辑:我了解到可以使用快速会话来完成我需要的操作。
您可以创建一个 POST 请求并在请求正文中发送它(使用 axios 或 Fetch API)。
所以,我有两个控制器,authController
和 onboardingController
。 authController 通过此行与 onboardingController 通信:
res.redirect('/onboarding/info?profileId=' + profile.id + '&emailAddress=' + profile.emails[0].value)
onBoardingController 接收查询字符串参数并将它们转换为在呈现相应页面时可访问的元数据:
model.profile = { id: req.query.profileId, email: req.query.emailAddress };
res.render('onboarding/missingInfo', model);
现在,由于 onboardingController 中的 model.profile
不知道来自 authController 的实际配置文件数据背后的上下文,我只想到通过查询字符串传递和接收数据。有没有其他方法可以做到这一点,因为在 URL 中有一个电子邮件地址会使它看起来很奇怪。
编辑:我了解到可以使用快速会话来完成我需要的操作。
您可以创建一个 POST 请求并在请求正文中发送它(使用 axios 或 Fetch API)。