PHP调用Gmail API获取用户别名提示方法未定义是什么原因?
错误原因
list是PHP的内置保留关键字,不允许被用作类方法名,Google Gmail API官方PHP客户端库为了避免命名冲突,没有定义list()方法,因此调用时会抛出未定义方法的报错。- 你需要使用客户端库对该资源列表查询接口单独定义的合规方法名。
修复方案
替换调用方法的代码即可,根据你使用的客户端库版本选择对应写法:
新版Google API PHP客户端
function recupererAlias($user) { $gmail = objetGmailAPI($user); try { $req = $gmail->users_settings_sendAs->listSendAs($user); return $req; } catch (Exception $e) { return 'Error<hr/>'.$e->getMessage(); } }
旧版Google API PHP客户端
直接将list改为带后缀下划线的list_即可:
$req = $gmail->users_settings_sendAs->list_($user);
注意事项
调用该接口需要你的授权凭证包含https://www.googleapis.com/auth/gmail.settings.basic及以上权限范围,否则会返回权限不足的错误。
内容的提问来源于stack exchange,提问作者Aziros
相关产品推荐
相关产品推荐

