Axios post根本不发送数据。。。设置表单post标题不需要';我不能正常工作
无法理解这一点,看到一些答案说对象编码为JSON,这很好,但事实并非如此Axios post根本不发送数据。。。设置表单post标题不需要';我不能正常工作,axios,Axios,无法理解这一点,看到一些答案说对象编码为JSON,这很好,但事实并非如此 axios.post('/api/calculate', { term: 12, borrowAmount: 1000, depositPercent: 40 }, { headers: { 'X-CSRF-TOKEN': window.csrf_token } }) .then(response => { this.response = response.data; });
axios.post('/api/calculate', {
term: 12,
borrowAmount: 1000,
depositPercent: 40
}, {
headers: { 'X-CSRF-TOKEN': window.csrf_token }
})
.then(response => {
this.response = response.data;
});
据我所知,post
方法中的第二个参数是数据,它将被转换为JSON,但是这并没有发生,$\u post
只是空的
即使这确实有效,但这确实有点糟糕,因为我必须考虑在我的端点内接收一个JSON字符串,而不是像普通表单一样只接收一个
$\u POST
数组 所以,我们找到了解决这个问题的方法。基本上,这是因为Axios没有发布具有以下任一内容类型的数据:
- 应用程序/x-www-form-urlencoded
- 多部分/表单数据编码
application/json
此代码将修复此问题:
if (empty($_POST)) {
$_POST = json_decode(file_get_contents('php://input'), true);
}
请求是否到达您的服务器,您是否看到(我猜)代码200?我唯一能建议的是尝试使用不带标题的最简单的请求,看看是否有更改并继续there@JohnSmith我试图通过
{test:'hello'}
来保持它的简单性,但这不起作用,我还删除了头。是的,我得到了200的回复