PUT请求后无法使页面重定向

时间:2019-07-15 09:20:49

标签: redirect sequelize.js put

我正在使用Sequelize将数据添加到存储在MySQL中的User对象。问题是在对象的对象已更新后,我无法使页面重定向。

我尝试使用几种方法,包括客户端JS中的window.location.href =和服务器端的res.redirect(303, '/home');,以及这些代码的10-15种变化形式。

客户端JS:

    $(document).ready(function () {

        $(document).on("submit", "#tellusmore", function () {
            var userData = {
                firstname: $("#firstname").val().trim(),
                lastname: $("#lastname").val().trim(),
                email: $("#email").val().trim(),
                bio: $("#bio").val().trim(),
            }
            console.log(userData);
            updateUser(userData);
        });

        function updateUser(newData) {
            $.ajax({
                method: "PUT",
                url: "/api/tellusmore",
                data: newData
            }).then(function() {
                window.location.href = '/home';
            })
        }
    })

服务器端:

  app.post("/api/tellusmore", function (req, res, next) {
    db.user.update({
      firstname: req.body.firstname,
      lastname: req.body.lastname,
      about: req.body.bio,
      email: req.body.email
    }, {
        where: {
          username: req.user.username
        }
      }).on('success', function() {
        res.redirect(303, '/home');
      });
  });

我想重定向到http://localhost:3000/home,但URL一直像这样返回:

http://localhost:3000/tellusmore?firstname=john&lastname=smith&email=johnsmith%40aol.com&bio=test+

0 个答案:

没有答案