Gmail API curl в PHP дает 404 (со свежим токеном) - PullRequest
1 голос
/ 01 октября 2019

Я пытаюсь подключиться к моей почте Gmail со страницы PHP через API Gmail. Я перейду на страницу PHP к встроенной системе, чтобы легко получать и отправлять электронные письма. В тот момент, когда я получил свой токен, используя OAuth (https://developers.google.com/identity/sign-in/web)., но он не работает для получения списка рассылки, я получаю страницу Google 404, когда захожу на страницу PHP. Изображение ошибки 404 на моемСтраница PHP: https://imgur.com/80Ttm9o Код PHP:

$apikey = "APIKEY";
$token = "received over OAuth in console";

$q   = array("q"=>"PHP HTTP request");
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL,"https://www.googleapis.com/gmail/v1/users/EMAIL@gmail.com/messages?includeSpamTrash=true&maxResults=5&key=APIKEY");
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS,$q);  //Post Fields
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$headers = [
    "Content-Type: application/x-www-form-urlencoded",
    "Content-Length: ".strlen("PHP HTTP request"),
    "User-Agent: PHP Test",
    "Accept: application/json",
    "Authorization: Bearer ".base64_encode($token),
    "Cookie: key=".base64_encode($apikey),

    "Host: www.XXXXXXXX.be",
    "Referer: http://www.XXXXXXXX.be/test/test.php" //Your referrer address
];
curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);
$server_output = curl_exec($ch);
curl_close ($ch);
print  $server_output ;

1 Ответ

0 голосов
/ 02 октября 2019

Я нашел этот сайт: https://wp -time.com / send-email-via-gmail-api-using-php / С этим уже можно отправлять. Я работаю, чтобы импортировать входящие, чтобы просмотреть полученные письма, и это работает! Я также сделал это, выполнив вход самостоятельно, добавив следующие заголовки и $ mail gmail и $ пароль в виде простого текста. Вы можете написать мне, если вам нужна помощь / php-код. Когда я закончу, мой код должен быть переведен в API, чтобы легко отправлять и получать электронные письма.

'username' => $mail,
'password' => $password,
'grant_type' => 'authorization_code' 
...