PHP Gmail API - 发送草稿

标签 php oauth-2.0 google-oauth gmail-api google-api-php-client

如何通过 PHP 使用 GMAIL APIOAuth2.0 发送草稿?

official docs没有关于如何使用 PHP 实现此目的的引用。

基于Java的例子,我试过:

$drafts = array();

try {
    $draftsResponse = $service->users_drafts->listUsersDrafts('me');
    if ($draftsResponse->getDrafts()) {
        $drafts = array_merge($drafts, $draftsResponse->getDrafts());
    }
} 

catch (Exception $e) {
    echo 'An error occurred: ' . $e->getMessage();
}

var_dump($drafts);

foreach ($drafts as $draft) {
    echo 'Draft with ID: ' . $draft->getId() . '<br/>';
    $abc = $service->users_drafts->send('me',$draft->getId());
    var_dump($abc);
}

当然我做错了什么,因为它不起作用。第一个 var_dump() 返回所有草稿。但在那之后没有其他事情发生。

你能帮帮我吗?

最佳答案

您必须创建一个新的 Google_Service_Gmail_Draft 实例并使用它,而不仅仅是提供 id:

foreach ($drafts as $draft) {
    $d = new Google_Service_Gmail_Draft();
    $d->setId($draft->getId());
    $service->users_drafts->send('me', $d);
}

关于PHP Gmail API - 发送草稿,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46275690/

相关文章:

android - 如何在共享首选项中存储来自 OAuth2 的凭据

php - 按主题线程化电子邮件

php - MySQL选择多条件

authentication - 卡夫卡SASL : OAUTHBEARER and PLAIN simultaniously

oauth-2.0 - 如何在Google OAuth 2中获取Gmail帐户的创建日期

api - 我可以使用 Google 表格连接到 API(使用 OAuth2)或者我可以从 Postman 向 Google 表格发送每小时的预定回复吗?

android - 如何在Android应用程序中访问谷歌开发者API

PHP PDO MySQL 密码验证问题

php - MySQL事务,回滚不起作用,(PHP PDO)

php - 如何使 google oauth2 的访问 token 根本不会过期?