Vue.JS Axios POST请求。然后方法

时间:2017-06-02 06:53:46

标签: post vue.js axios

我被卡住了!

我正在通过AXIOS从VUE应用程序向服务器发送POST请求。 一切正常,服务器响应。 问题是,.then方法永远不会被调用。怎么会这样? 奖金问题你是如何从VUE做出请求的?

非常感谢

methods:{
    customMethod1: function() {

        //AXIOS
        var config = {
            headers: {'My Custom Header 1': 'Header-Value'}
        };

        //POST request
        axios.post('http://192.168.56.101:5000/post1', {name: 'Dave'}, config)

        .then(function(response){
            alert("posted successfully");
        });

        },

}

2 个答案:

答案 0 :(得分:0)

您是否通过像Fiddler这样的工具确认服务器实际发送了响应?可能是服务器实际上从未实际响应过。

答案 1 :(得分:0)

我刚刚找到解决方案,我不知道是否应该与发布此问题的人分享:他至少可以回答其他人试图帮助他。 当我在这里找到许多答案时,我发布了我的解决方案(可能不是正确答案,但它有效)

这不是vue.js问题,也不是axios ,只有在服务器端返回某些内容时才会调用.then语句。

解释一些代码:

Product.update(
        {
            productName: req.body.productName,
            productDesc: req.body.productDesc,
            productOwner: 0,
            productImage: req.body.productImage,
            productState: req.body.ProductState,
            productPrice: req.body.ProductPrice
        },
        {
            where: {
                id: req.body.id
            }
        })
        .then(function (item) {
            console.log("Product update " + item.id);
            res.send({id: item.id});    
        })
        .catch(function (err) {
            console.log("Product update error " + err);
        });

这里的重要一点是:

res.send({id: item.id});  

如果您在服务器端没有返回任何内容,则不会调用客户端。

让我知道它是否有效,但+1我;-)