gpt4 book ai didi

node.js - 如何在express中重定向到post请求

转载 作者:太空宇宙 更新时间:2023-11-03 23:25:15 24 4
gpt4 key购买 nike

我正在创建一个登陆页面,当点击该页面时,会自动触发 Facebook 身份验证流程。但是,我无法自动从索引重定向到 signup 路由。如何以 Express 方式从 GET 请求重定向到 POST 请求?

    router.get('/', function(req, res) {
//redirect to login function
});

router.post('/signup', passport.authenticate('signup', {
//Log user in on facebook
}));

最佳答案

不可能从 GET 请求重定向到 POST 请求。

您所能做的就是将 POST 请求重定向到 POST 请求,但即使这样有时也很棘手,但您永远无法重定向到与原始请求不同的方法(除非该不同的方法是 GET)。

通常,您可以通过发送 301 Moved Permanently 或 302 Found HTTP 状态代码来进行重定向。它们在实践中通常都像 303 See Other 并发出 GET 请求一样工作。

有一个 307 临时重定向(自 HTTP/1.1 起)不允许更改 HTTP 方法。它可以用于将 POST 重定向到 POST,但请注意,明确不允许更改该方法,因此您不能使用它将 GET 重定向到 POST(甚至将 POST 重定向到 GET,否则可以使用简单的 301 或 302 响应)。

请参阅这些答案以了解更多背景信息:

关于node.js - 如何在express中重定向到post请求,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45174857/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com