【问题标题】:Trying to make a redirect page尝试制作重定向页面
【发布时间】:2022-01-25 09:24:27
【问题描述】:

我正在创建一个新用户并将其保存在我的数据库中,如下所示:

const user= new User({
    username: userId,
    password: pass,
    nameOfUser: user_name,
    emailOfUser: user_email
);
user.save();

res.redirect("/redirectpage");
setTimeout(function(){
    res.redirect("/");
},5000);

保存用户后,我正在尝试创建倒计时重定向页面。它看起来像:

在此之后,计数器(5 秒)达到 0,我打算将用户重定向到作为主路由的登录页面。我通过 setTimeout 实现了这一点。但不幸的是,我的应用程序崩溃并出现以下错误: (** 注意:如果我注释掉 res.redirect("/redirectpage"),则不会显示错误)

【问题讨论】:

  • 从 Express 向用户发送结果后,您将无法发送任何其他内容。

标签: javascript node.js database mongodb express


【解决方案1】:

此代码尝试将用户重定向两次。首先到/redirectpage,然后再到/。你不能这样做,因为第一次调用res.redirect() 会完成请求,所以你不能再发送任何数据,比如第二次重定向。您可以通过将重定向代码移动到客户端 javascript 来解决此问题。这段代码应该可以工作:

setTimeout(function() {
    window.location.replace("[full redirect url]");
}, 5000);

阅读this answer 以了解有关从客户端重定向的更多信息。

【讨论】:

    猜你喜欢
    • 2019-01-25
    • 1970-01-01
    • 1970-01-01
    • 2021-12-25
    • 2012-01-29
    • 1970-01-01
    • 2021-10-14
    • 1970-01-01
    • 2013-08-18
    相关资源
    最近更新 更多