【发布时间】:2020-03-27 01:49:47
【问题描述】:
我正在使用下面的 Axio Reactjs 代码将表单数据发布到 php 后端。
当我从 chrome 浏览器 console 检查 record.php 文件和 网络。它显示连接正常,但发布的数据为空。似乎 axios 没有将数据发送到 php 后端。
我在 SO 上尝试了一些解决方案,但无法使其正常工作。任何解决方法将不胜感激。
axios({
method:'POST',
url:'http://localhost/mydata/record.php',
rec:{
myParameter1: 'test',
myParameter2: 'test2',
}
}).then(res => {
const data = res.data;
this.setState({ data });
console.log(data);
})
.catch(err => { // log request error
//this.setState({ error: false });
console.error(err);
})
php 代码
<?php
header('Access-Control-Allow-Origin: *');
header('Access-Control-Allow-Methods: GET, POST');
header("Access-Control-Allow-Headers: X-Requested-With");
//header("Content-Type: application/json");
//check if file_get_contents is enabled
if( ini_get('allow_url_fopen') ) {
echo "enabled";
} else{
echo "not enabled";
}
$data = file_get_contents("php://input");
$request = json_decode($data);
print_r($request);
print_r($data);
?>
【问题讨论】:
-
尝试将
rec对象包裹在data键中,比如data : {rec: {...}}Docs