jquery - NodeJS + jQuery : Redirect after POST: client or server - which is better?

标签 jquery node.js redirect post

我试图在通过 jQuery 发布后重定向到指定页面。这是我的帖子代码:

$.post("/addcompany", {
name: $('#company_name').val(),
phone: $('#company_phone').val(),
email: $('#company_email').val(),
suppliers: JSON.stringify(suppliers),
}, function(){
    alert('after post'); 
    window.location.href = '/companies';
    }
);

这是我在 NodeJS 上的后端代码:

app.post('/addcompany',function(req,res){
db.collection("companies",function(err,collection){
    collection.insert( {
        "name":req.body.name,
        "email":req.body.email,
        "phone":req.body.phone,
        "suppliers" : JSON.parse(req.body.suppliers)
    });
});
res.redirect('/companies');
});

问题是,如果我不在 jQuery 脚本和 NodeJS 后端代码中重定向到“/companies”,我的重定向将不起作用。我应该在哪里放置重定向代码?我必须将其放置两次(在服务器上和客户端上),这是否正常?谢谢!

最佳答案

在这种情况下,您应该只在前端进行重定向。为了正确实现这一点,我认为您应该在后端使用 res.send() (空 200 响应,让客户端知道服务器端一切正常)。

如果您想在服务器端重定向,则不应使用 Ajax,只需使用普通的旧发布请求即可。

关于jquery - NodeJS + jQuery : Redirect after POST: client or server - which is better?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10977176/

相关文章:

php - 如何重定向到子文件夹,然后在 htaccess 中将子文件夹链接重写到根目录?

javascript - 单击一个元素,影响它后面的内容

javascript - Jquery返回未排序的数组

javascript - 再次关于 javascript 中的 async/await

javascript - Node.js 插件中的回调函数

php - 重定向,但隐藏推荐人

cookies - Nginx 301 重定向公司设置cookie

javascript - 在 tbody 中的每个 td 上引发 jQuery 单击事件

javascript - 如何在 jQuery 中将 JSON 字符串转换为 JavaScript 对象?

node.js - 使用 Homebrew 程序安装新 Node 后执行 "npm -g update"时出错