对于PHP简单的只读请求来获取日历事件,谷歌日历API(Google calendar API fo

2019-07-17 16:35发布

我想写一些简单的PHP代码的网站,使用谷歌的日历API V3获得只读访问事件的公共谷歌日历列表。 我只是需要从网页上的日历显示即将发生的事件的列表。 我读过的开发文档,看着入门部分获取事件的示例代码 ,但我有点困惑。 我在想:

  • 有没有一种简单的方法做什么,我需要避免这一切的OAuth的东西吗? 是否有未验证的访问方法?

  • 如果不是,它看起来像我需要设置为我在code.google.com/apis/console/的应用程序访问,然后生成一个应用程序名称,客户端ID,ClientSecret,RedirectURI和替换DeveloperKey。 该应用程序名称替换DeveloperKey足够简单的在谷歌控制台来查找。 但是,对于其他项目,我需要创建一个OAuth 2.0客户端ID,这就要求我选择如果应用类型是Web应用程序或服务帐户。 它应该是对我的情况怎么办? 在这种情况下没有用户登录应该是必需的,因为我不是在请求访问 calendar--它只是一个公共日历我需要访问。

  • 什么是重定向URI,它是如何习惯。 我应该如何设置?

  • 谷歌的API样本获取和会话数据缓存的访问令牌。 然后,代码中的注释说没有做到这一点,你应该使用一个数据库来代替。 真的吗? 我真的需要处理缓存的访问令牌? 如果是这样,有一个内置在谷歌API DB的缓存机制或者你怎么处理呢?

我真的找一个更简单的方法。 您的指导会受到欢迎!

谢谢。

Answer 1:

我想你得太多办法这一个。 如果你只需要访问事件的公共日历,然后有一个办法做到这一点,而不必调用谷歌日历API和所有连接的复杂性。 每一个公共谷歌日历具有可在特定的网址进行查看,通常在形式的iCal供稿:

http://www.google.com/calendar/ical/{OWNER}/public/basic.ics

其中{OWNER}是日历的所有者的URL编码的电子邮件地址。

您可以通过查看日历设置和滚动到日历详情标签的底部找到特定的URL。



Answer 2:

一些提示,这样做嵌入在评论查尔斯的答案。 无论如何,2014年(与谷歌日历V3 API),这是我做的:
去这里看看第3版API是如何工作的:
https://developers.google.com/google-apps/calendar/v3/reference/events/list#try-it

填写演示Web表单至少这三个字段上面的链接上可用:
calendarId :日历所有者的URL编码的电子邮件地址。
timeMax :结束时间
timeMin :开始时间
(本次使用格式: 2014-05-04T00:00:00-00:00 (年月日牛逼毫秒-偏移))

你会看到正在发出下面的请求。

GET https://www.googleapis.com/calendar/v3/calendars/{CALENDER_ID}/events?timeMax={start_time}&timeMin={end_time}&key={YOUR_API_KEY}

现在,您可以自定义您的要求这一请求URL,并从你的代码定期发送GET请求。

PS - 为了让您的API密钥,这里遵循的步骤:
https://developers.google.com/google-apps/calendar/auth



文章来源: Google calendar API for PHP simple read-only request to get calendar events