无法弄清楚这一点,看到几个回答说该对象被编码为JSON,这很好,但是事实并非如此。
axios.post('/api/calculate', {
term: 12,
borrowAmount: 1000,
depositPercent: 40
}, {
headers: { 'X-CSRF-TOKEN': window.csrf_token }
})
.then(response => {
this.response = response.data;
});
据我了解,post
方法中的 second 参数是数据,该数据将转换为JSON,但是这没有发生,$_POST
只是空的...
即使此方法确实有效,也确实有点废话,因为我随后不得不考虑在端点内接收JSON字符串,而不是像常规形式那样仅使用$_POST
数组...
答案 0 :(得分:0)
因此,找到了解决此问题的方法。基本上是由于Axios没有发布具有以下两种内容类型的数据:
相反,它使用的是application/json
。
此代码将解决问题:
if (empty($_POST)) {
$_POST = json_decode(file_get_contents('php://input'), true);
}