在PHP中处理Axios POST

时间:2017-05-04 21:38:28

标签: php axios

我想向我的PHP文件发送一个POST请求来处理它并将数据存储在数据库中。我很沮丧,因为无论我尝试什么,$ _POST都会保持空白。

有人可以帮我发送帖子请求并帮我解决问题吗?

我的axios请求:

// Performing a POST request
axios.post('dev/api/post.php',{ text: text, unk: unk})
  .then(function(response){
      console.log(response);
}).catch(function (error) {
      console.log(error);
});  

这就是我在PHP中尝试过的,有些代码被注释掉了,因为不确定它是否有效..

if(isset($_POST) && !empty($_POST)){
/*  
$jsonReceiveData = json_encode($_POST);
$json_output = json_decode($jsonReceiveData);
$task = $json_ouput->text;
$uniquekey = $json_output->unk;
*/
echo $_POST;
/*
$stmt = $pdo->prepare("INSERT INTO todo (id, tekst, uniquekey) VALUES ('', :tekst, :unk)");
$stmt->bindParam(':unk', '1');
$stmt->bindParam(':tekst','testing');
$stmt->execute();
*/

}

解决方案:

$data = json_decode(file_get_contents("php://input"), true);
$task = $data['text'];

该对象在php:// input

中找到

2 个答案:

答案 0 :(得分:5)

用户在 php://输入

中解决了“找到”对象的问题
resp.read()

正如STEEL指出的那样,这是PHP代码中的一个问题,而不是React或Axios。

答案 1 :(得分:-2)

只需要:

if(isset($_POST['text'])) { ... }