这是认证部分
$client = new Google_Client();
$client->setClientId(config('gmail.client_id'));
$client->setClientSecret(config('gmail.client_secret'));
$client->setRedirectUri(config('gmail.redirect_url'));
$accessToken = json_decode(file_get_contents(storage_path("app/gmail/tokens/gmail-json-$userId.json")), true);
$client->setAccessToken($accessToken);
$gmailService = new Google_Service_Gmail($client);
发送草稿回复后,在使用 PHP 客户端库时显示为单独的消息给收件人․发送草稿回复后,在使用 PHP 客户端库时显示为单独的消息给收件人․
$message = $gmailService->users_messages->get('me', $messageId);
$headers = $message->getPayload()->getHeaders();
$subject = '';
$messageID = '';
foreach ($headers as $header) {
if ($header->name === 'Subject') {
$subject = $header->value;
}
if ($header->name === 'Message-ID') {
$messageID = $header->value;
}
}
$headers = [];
$header1 = new Google_Service_Gmail_MessagePartHeader();
$header1->setName('Subject');
$header1->setValue('Re: ' . $subject);
$headers[] = $header1;
$header2 = new Google_Service_Gmail_MessagePartHeader();
$header2->setName('In-Reply-To');
$header2->setValue($messageID);
$headers[] = $header2;
$header3 = new Google_Service_Gmail_MessagePartHeader();
$header3->setName('References');
$header3->setValue($messageID);
$headers[] = $header3;
$header4 = new Google_Service_Gmail_MessagePartHeader();
$header4->setName('To');
$header4->setValue('[email protected]');
$headers[] = $header4;
$messagePart = new Google_Service_Gmail_MessagePart();
$messagePart->setHeaders($headers);
$message2 = new Google_Service_Gmail_Message();
$message2->setThreadId($message->getThreadId());
$message2->setPayload($messagePart);
$message2->setRaw(rtrim(strtr(base64_encode(' '), '+/', '-_'), '='));
$draft = new Google_Service_Gmail_Draft();
$draft->setMessage($message2);
$createdDraft = $gmailService->users_drafts->create('me', $draft);