donglu4633 2018-03-02 13:47
浏览 45
已采纳

如何检索由axios发送请求发送的php中的变量[重复]

This question already has an answer here:

I want to send a POST request to a PHP script. I am using Axios:

axios.post('inc/vote.php', {
    id: this.selected,
}) .then(function (response) {
    console.log(response);
});

In the PHP file I am trying something like this to retrieve that id variable from axios:

$id = $_POST['id'];

But seems it is not doing anything.

What is the correct way to retrieve variables from the request?

</div>
  • 写回答

1条回答 默认 最新

  • doufulian4076 2018-03-02 14:10
    关注

    Axios sends data as a JSON inside request body not as a Form Data. So you can't access the post data using $_POST['id'].

    Frontend Solution

    To be able to access data using $_POST['id'] you have to use FormData as the following:

    var form = new FormData();
    form.append('id', this.selected);
    axios.post('inc/vote.php', {
        form
      }) .then(function (response) {
        console.log(response);
      });
    

    Backend Solution if you are interested in getting the request body as associative array you can use:

    $data = json_decode(file_get_contents("php://input"), TRUE);
    $id = $data['id'];
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥15 微信公众号自制会员卡没有收款渠道啊
  • ¥15 stable diffusion
  • ¥100 Jenkins自动化部署—悬赏100元
  • ¥15 关于#python#的问题:求帮写python代码
  • ¥20 MATLAB画图图形出现上下震荡的线条
  • ¥15 关于#windows#的问题:怎么用WIN 11系统的电脑 克隆WIN NT3.51-4.0系统的硬盘
  • ¥15 perl MISA分析p3_in脚本出错
  • ¥15 k8s部署jupyterlab,jupyterlab保存不了文件
  • ¥15 ubuntu虚拟机打包apk错误
  • ¥199 rust编程架构设计的方案 有偿