我有一个表单,我希望在用户成功注册后将消息输出,然后将其重定向到另一条路由。
因此,我对/register
的发帖请求中包含这段代码。
newUser.save()
.then((user: any) => {
res.json({ success })
res.redirect('/')
})
.catch((error: string) => { throw error });
这会向我发送成功消息,我可以在我的React组件中输出该消息,但在重定向之后不会触发。
有没有办法做到这一点?还是在这种情况下重定向应该在React组件中?例如
答案 0 :(得分:1)
无法完成。发送响应后,便无法更改。
此外,响应显然在客户端作为XMLHttpRequest处理。即使不需要JSON响应,它也不会重定向浏览器。
如果使用window.location
或历史API或React路由器,则应在收到XHR响应后执行客户端重定向。