PHP Gmail API无法提取电子邮件

时间:2014-06-29 04:57:26

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

我使用带有OAuth2的PHP google api。

令牌的所有过程都会进行 已成功完成。

我使用范围:

$a_scopes = array(
                  Google_Service_Oauth2::USERINFO_EMAIL,                                                                       
                  Google_Service_Oauth2::PLUS_ME,
                  'https://mail.google.com/mail/feed/atom'                           
                 );

$this->client->setScopes($a_scopes);

我使用代码检索电子邮件:

$plus = new Google_Service_Plus($this->client);
$person = $plus->people->get('me');
$user = $person->getEmails();

echo("<pre>");var_dump($user);die("</pre>");

结果:

array(1) {
   [0]=>
   object(Google_Service_Plus_PersonEmails)#29 (4) {
      ["type"]=>
      string(7) "account"
      ["value"]=>
      string(17) <My Email>
      ["modelData":protected]=>
          array(0) {
          }
      ["processed":protected]=>
          array(0) {
          }
   }
}

1 个答案:

答案 0 :(得分:1)

我不认为原子Feed是API的定义范围。 documentation仅定义基本:Modify,ReadOnly和Compose范围。 Atom Feed仅显示未读消息,即使只显示消息的snippets

要解决您的问题,您需要将范围定义为Gmail API定义的those之一