首页 | 新闻 | 新品 | 文库 | 方案 | 视频 | 下载 | 商城 | 开发板 | 数据中心 | 座谈新版 | 培训 | 工具 | 博客 | 论坛 | 百科 | GEC | 活动 | 主题月 | 电子展
返回列表 回复 发帖

创建一个移动友好的待办事项列表应用程序(1)

创建一个移动友好的待办事项列表应用程序(1)

您将需要知道的事项像其他许多 Google 产品一样,Google Tasks 公开了一个  ,它允许第三方应用程序连接到它,并围绕它的数据构建自定义应用程序。这个 API(遵循 REST 模型)可通过任何具有 REST 功能的开发工具包进行访问,而且已经拥有针对许多常见编程语言的客户端库,包括我最喜爱的 PHP。
要理解这里给出的 PHP 示例代码,您应当对 PHP 中的类和对象的基本知识有一定的了解,而且习惯使用 REST。您还应当熟悉 HTML、CSS 和 jQuery。
让我们开始吧!
配置依赖性库和组件 首先设置 Slim。
如果不熟悉 Slim,它是一个用于快速开发 Web 应用程序和 API 的 PHP 微型框架。不要被它的名称所误导:Slim 包含一个复杂的 URL 路由器,而且支持页面模板、flash 消息、加密 cookie 和中间件。它非常容易理解和使用,而且具有优秀的文档和一个热心开发人员社区。
第 1 步. 使用 Slim 和 Google OAuth 库创建应用程序目录更改到 Web 服务器的文档根目录(通常在 Linux 上为 /usr/local/apache/htdocs,在 Windows 上为 C:\Program Files\Apache\htdocs),然后为应用程序创建一个新的子目录。将此目录命名为 tasks。
1
2
shell> cd /usr/local/apache/htdocs
shell> mkdir tasks




此目录在本文中被称为 $APP_ROOT。
假设您已经下载了上一节中介绍的 Slim 框架和 Google OAuth 库,并将这些库提取到 $APP_ROOT/vendor 中。另外,您已经将 index.php 和 .htaccess 文件从 Slim 下载压缩文件传输到您的 $APP_ROOT 目录,编辑 index.php 文件,以便反映 Slim.php 文件的正确路径。
您的目录结构现在应类似于:
第 2 步. 定义一个虚拟主机为了使得应用程序更易于访问,一个不错的想法是定义一个新虚拟主机并将它设置为工作目录。为此,需要编辑 Apache 配置文件(httpd.conf 或 httpd-vhosts.conf),向其中添加以下行:
1
2
3
4
5
NameVirtualHost 127.0.0.1
<VirtualHost 127.0.0.1>
    DocumentRoot "/usr/local/apache/htdocs/tasks"
    ServerName tasks.melonfire.com
</VirtualHost>




这些行定义了一个新虚拟主机,该主机的文档根目录对应于 $APP_ROOT。在上面的清单中,此主机的名称为 tasks.melonfire.com。请记住,您需要将此名称更改为 localhost 或在您控制之下的另一个域。
重新启动 Web 服务器,以便激活这些新设置。请注意,可能有必要更新您网络的本地 DNS 服务器,让它也知道这个新主机。
完成这些操作之后,在浏览器中打开您的新主机。您会看到 Slim 框架欢迎页面:
第 3 步. 向 Google Apps Platform 注册您的应用程序使用 Google Tasks API 之前,需要向 Google 注册您的 Web 应用程序。为此,需要使用您的 Google Account 凭据登录到 Google 并访问  。创建一个新项目,为它分配一个名称,然后开启对 Google Tasks API 的访问权。您的项目在 Google Cloud Console 看起来应类似于:

接下来,注册您的 Web 应用程序,以获得 OAuth 2.0 客户端 ID 和密钥。记下这些值,Google PHP OAuth 客户端需要使用它们。
请记住,您还要在这里设置应用程序重定向 URL。在完成 OAuth 身份验证流程后,Google 会将客户端浏览器重定向到这个 URL。在根示例中,此 URL 被设置为 http://tasks.melonfire.com/login:
登录后,您还应当访问 Gmail,其中包含一个  ,向它添加一些示例任务列表和任务。这对检查 PHP 应用程序能否正常工作很有用。Gmail 中的 Google Tasks 界面类似于:               
看起来像是要完成许多挂钩,好消息是您只需完成一次即可。
返回列表