我想从我的个人日历中获取所有活动。我已经尝试了几个小时所有类型的auth: 我使用回调成功验证,我应该登录到我的谷歌帐户,然后谷歌重定向回我的网站。 - 但这不是我需要的。 此外,我尝试使用默认凭据,令我惊讶的是,我无法访问我的日历,这是什么样的逻辑。
基本上,它在Spotify中如何为我工作:在Spotify中可以在我的帐户中生成客户端ID和密码。之后,我从我的代码中发送带有base64(client:password)的HTTP,并从我的代码接收令牌,我用它来查询某些实体。
但是在google API中我找不到这样的解决方案。也许有人可以建议如何进行身份验证?
答案 0 :(得分:3)
您可以使用Google client library for PHP。它标记为echo PASSWORD | kinit && aklog
,但我发现它很容易使用,它对于简单的日历用例来说效果很好。
我放了working example out on GitHub.
如果您希望直接针对OAuth 2.0 API进行编码,我建议您查看Google Developers OAuth 2.0 Playground。
beta
。Calendar API v3
,然后选择List possible operations
。将List Events
替换为您的gmail.com电子邮件地址。这使您可以观察身份验证流程,从用户进行身份验证并向Google授予权限后重定向到应用程序开始:
{calendarId}
GET /oauthplayground/?code=4/xxxxxxxxxxxZL-nxhM_kxxxxxxxxxQ HTTP/1.1
POST /oauth2/v4/token HTTP/1.1
Host: www.googleapis.com
Content-length: 233
content-type: application/x-www-form-urlencoded
user-agent: google-oauth-playground
code=4%2FxxxxxxxxxxxxxxZL-xxxx_kxxxxxxxxxxQ&redirect_uri=https%3A%2F%2Fdevelopers.google.com%2Foauthplayground&client_id=4xxxxxxxxxx.apps.googleusercontent.com&client_secret=************&scope=&grant_type=authorization_code