VUE axios post遇到请求不到数据的问题,解决方法如下

在使用axios做接口请求的过程中发现,按照官方文档中的写法,

get()方法是行得通的,post()方法是无论如何都行不通,

控制台中可以看到参数都全部在请求里了,但是就是请求不到数据。

VUE axios post遇到请求不到数据的问题,解决方法如下_第1张图片
get()方法


VUE axios post遇到请求不到数据的问题,解决方法如下_第2张图片
post方法

通过观察控制台可以发现,请求中的数据格式和往常看到的不太一样,正常的post数据格式应该是这样的


遇到这样的问题,解决方法如下:

一、对post的数据使用qs进行处理

        1、qs安装:

                    npm install qs

        2、main.js中引入qs:

                    import qs from 'qs'

        3、对数据进行处理

                    var data = qs.stringify({

                                'key1': 'val1',

                                'key2': 'val2'

                      });

二、post格式:在请求头部中增加Content-Type值

        axios.post('/user', data,{headers:{'Content-Type':'application/x-www-form-urlencoded'}})

            then(function (response) {

                console.log(response);

             })

            .catch(function (error) {

                console.log(error);

             });

这样就解决了请求数据格式不对的问题。

你可能感兴趣的:(VUE axios post遇到请求不到数据的问题,解决方法如下)