POST响应到达Postman,但不是通过Ajax吗?

时间:2018-11-17 21:36:51

标签: node.js ajax http xmlhttprequest postman

我有一个具有此功能的 Node.JS POST服务

exports.createUser = function(req, res) {
    var newUser = new User(req.body);
    newUser.save(function(err, user) {
        if (err) {
            console.log(err);
            res.send(err);
        }
        console.log(user);
        res.json(user); 
    });
};

如果我在Postman中发出 POST请求,一切都很好,结果用户对象将打印在控制台中,我也接收在Postman中:

{ 
  "_id": "5bf08768d2af0932fc263b8c",
  "Username": "a34324",
  "FirstName": "43242",
  "LastName": "3424",
  "Password": "23423432",
  "Permission": 0,
  "__v": 0 
}

(结果的控制台版本和Postman版本之间的唯一区别是,在Postman中,位于“” -s之间,而在在控制台中,它们不是 objectId 也在“” -s中,而在控制台中,不是 >。)

但是,如果我想通过Ajax通过客户端从我的客户端使用此POST服务,则该用户对象将打印在控制台中,但我的浏览器未收到该对象 >。

$(document).ready(function(){
    $("#signup").submit(function(event){
        var formData = $(this).serializeArray();
        $.ajax({
            url: "myUrl",
            type : "POST",
            dataType: "json",
            data : formData,
            success: function(data ) { alert("success: " + data); },
            error: function(data) { alert("error: " + JSON.stringify(data)); },
            complete: function(xhr, status){ alert("complete: " + status);}
        });
        return false;
    })
});

弹出的顺序是:

  •   

    错误:{“ readyState”:0,“状态”:0,“ statusText”:“错误”}

  •   

    完成:错误

0 个答案:

没有答案