当前位置: 首页 > 知识库问答 >
问题:

如何在php中检索axios post请求发送的变量[duplicate]

慕光赫
2023-03-14

我想向PHP脚本发送POST请求。我正在使用Axios:

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

在PHP文件中,我尝试以下方法从axios检索id变量:

$id = $_POST['id'];

但它似乎什么也没做。

从请求中检索变量的正确方法是什么?

共有1个答案

欧阳炜
2023-03-14

Axios在请求体中以JSON的形式发送数据,而不是以表单数据的形式发送数据。因此,您无法使用$\u post['id']访问post数据。

前端解决方案

要使用$\u POST['id']访问数据,您必须按如下方式使用FormData:

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

后端解决方案如果您有兴趣将请求正文作为关联数组获取,则可以使用:

$data = json_decode(file_get_contents("php://input"), TRUE);
$id = $data['id'];
 类似资料:
  • 问题内容: 我打算将PHP用于一个简单的要求。我需要从URL下载XML内容,为此我需要向该URL发送HTTP GET请求。 如何在PHP中做到这一点? 问题答案: 除非只需要文件内容,否则可以使用。 对于更复杂的事情,我将使用cURL。

  • 问题内容: 我需要编写一个命令行客户端,以便在服务器上播放井字游戏。服务器接受http请求并将json发送回我的客户端。我正在寻找一种快速的方法,以使用Boost库发送http请求并以字符串形式接收json。 问题答案: 符合说明的最简单的事情: 这将收到完整的响应。您可以使用虚拟服务器对其进行测试:( 也可以 在Coliru上运行): 这将表明已收到请求,并且响应将由上面的客户代码写出。 请注意

  • 问题内容: 我正在尝试发出POST请求,但无法完成。另一端什么也没收到。 这是应该如何工作的吗?我知道该功能,但我想我不能使用它,因为它不能用测试,对吗? 问题答案: 您基本上有正确的想法,只是发送错误的表格。该表格属于请求的正文。

  • 问题内容: 在Java中,如何编写HTTP请求消息并将其发送到HTTP WebServer? 问题答案: 你可以使用。 示例(从此处开始),进行了改进。包括在链接腐烂的情况下:

  • 我试图插入javascript varaible到php mysql,但它不是插入。 我该怎么办?

  • 我在Java中使用play框架。我想检索在POST请求中发送到play服务器的整个请求正文。我怎样才能取回它?