Google Calendar 允许 Web 应用程序开发人员通过其基于 REST 的 Developer API 访问用户生成的内容和事件信息。PHP 的 SimpleXML 扩展和 Zend 的 GData Library 非常适合处理这种 API 生成的 XML 提要,可利用它们建立自定义的 PHP 应用程序。本文介绍了 Google Calendar Data API,示范如何浏览用户生成的日程表、添加和修改日程表事件以及按照关键字搜索。
很长时间以来,我一直使用的个人计划工具是 PalmPilot 自带的日程表工具。但在过去两年中,我逐渐转向了 Google Calendar:不仅仅因为它更具备 Web 特性,而且更容易共享事件信息、组织预约和处理不同类型的事件。
![]() |
|
作为一名开发人员,我发现 Google Calendar 非常便于非正式的谈话:开发人员利用其 Data API 很容易对公共和用户私有日程表中存储的数据创建新的应用程序。这种 API 采用了 REST 模型,可通过任何支持 XML 的开发工具包访问,并且为很多常用的编程语言提供了客户机上的库,包括我钟爱的 PHP。
本文将介绍 Google Calendar Data API,说明如何在自定义的 PHP 应用程序中集成和使用日程表数据。本文通过例子说明了如何:
- 从用户公共记事本中检索事件
- 添加新的事件
- 修改和删除事件
- 按照关键字或日期范围搜索事件
我们开始吧!
![]() ![]() |
![]()
|
编写 PHP 代码之前,首先简单了解一下 Google Calendar Data API。和所有基于 REST 的服务一样,这种 API 也接受包含一个或多个 XML 编码参数的 HTTP 请求,返回任何 XML 感知客户机都能解析的 XML 编码响应。对于 Google Calendar Data API,响应通常是一个包含请求信息的 Atom 或者 RSS 提要。
典型的 Google Calendar 提要包含大量的信息,足以创建有用的相关应用程序。我们来看一个例子,登录到 Google Calendar 帐户然后导航到日程表设置,找到您个人的日程表私有地址 URL。这个应该保密的 URL 提供了到日程表提要的只读访问,不需要首次授权,形式为 http://www.google.com/calendar/feeds/userid/private-magicCookie/basic
。将该 URL 粘贴到 Web 浏览器(或者通过 HTTP 客户机发送 GET 来请求该提要),得到的结果如 清单 1 所示:
清单 1. Google Calendar 提要示例
本文转自IBM Developerworks中国