我试图让Google API正常运行,并且我通过AJAX向PHP发送数组,但在我的PHP文件中,数组是空的。这是我到目前为止所得到的。
$.ajax({
type: 'POST',
url: '../scripts/email/google.php?storeToken&state',
data: {param : param},
success: function(result) {
console.log(result);
},
processData: false
});
然后在我的google.php文件中使用
$code = explode(",",file_get_contents('php://input'));
但是当我使用
时,$ code是空的var_dump($_POST);
它打印到控制台
Array(0){
}
我已经搜索了这个问题,并尝试了无数的修复问题"但似乎没有任何工作:/
编辑:除了使用AJAX之外,还有另一种方法可以在php文件中获取Code和我的状态变量,因为似乎无法正常工作
Error_log (print_r ($_POST,1));
将预期值打印到错误日志
答案 0 :(得分:1)
最后通过将我的代码更改为以下
解决了这个问题var params =
{
'authResult': authResult['code'],
'state':state
}
$.ajax({
type: 'POST',
url: '../scripts/email/google.php?storeToken&state/',
data: params
success: function(result) {
console.log(result);
},
processData: true
});
然后在php文件中以下列方式访问它
$authResult = $_POST['authResult'];
$state = $_POST['state'];
答案 1 :(得分:0)
尝试使用JSON.stringify
功能,如:
$.ajax({
type: 'POST',
url: '../scripts/emailgoogle.php?storeToken&state',
data : {'mydata':JSON.stringify(param)},
success: function(result) {
console.log(result);
}
});
在服务器端PHP
文件:
$data = file_get_contents('php://input');
$data = json_decode($data, true);
var_dump($data);
$post_data = $_POST;
var_dump($post_data);