<分区>
我想向 PHP 脚本发送 POST 请求。我正在使用 Axios:
axios.post('inc/vote.php', {
id: this.selected,
}) .then(function (response) {
console.log(response);
});
在 PHP 文件中,我尝试这样从 axios 中检索该 id 变量:
$id = $_POST['id'];
但似乎它什么也没做。
从请求中检索变量的正确方法是什么?
标签 javascript php ajax vue.js axios
<分区>
我想向 PHP 脚本发送 POST 请求。我正在使用 Axios:
axios.post('inc/vote.php', {
id: this.selected,
}) .then(function (response) {
console.log(response);
});
在 PHP 文件中,我尝试这样从 axios 中检索该 id 变量:
$id = $_POST['id'];
但似乎它什么也没做。
从请求中检索变量的正确方法是什么?
最佳答案
Axios 在请求正文中以 JSON
的形式发送数据,而不是作为表单数据。因此,您无法使用 $_POST['id']
访问发布数据。
前端解决方案
要能够使用 $_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'];
关于javascript - 如何在axios post请求发送的php中检索变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49070403/