javascript - axios,post请求传递不了参数
本文介绍了javascript - axios,post请求传递不了参数的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
问 题
new Vue({
el: '.box',
data: {},
methods: {
get: function() {
axios({
method: 'post',
url: 'post.php',
data: {
a: '1'
}
}).then(function(response) {
alert(response.data);
}).catch(function(error) {
alert(error);
});
}
}
});
post.php 文件
$a=$_POST['a'];
$b=$_POST['b'];
echo $a;
大家帮我看看是什么原因,是post请求还需要转换吗
解决方案
首先,可以试着把axios请求部分换成:
axios.post('post.php', {
a: '1'
}).then(function(response) {
alert(response.data);
}).catch(function(error) {
alert(error);
});
另外,由于axios默认发送数据时,数据格式是Request Payload,而并非我们常用的Form Data格式,PHP后端未必能正常获取到,所以在发送之前,需要使用qs模块对其进行处理。
import qs from 'qs';
...
axios.post('post.php', qs.stringify({
a: '1'
}))
.then( ... )
.catch( ... );
这篇关于javascript - axios,post请求传递不了参数的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文