印象笔记 JavaScript SDK 快速入门指南

本向导的目的是描述如何下载、安装和配置印象笔记 JavaScript SDK(与 Apache Cordova 库结合使用)并且利用它构建一个简单的 iOS 示例程序。

  • 准备工作

    为完成本教程,你需要具备以下条目:

    1. 位于印象笔记开发服务器https://sandbox.evernote.com上的账号,在开发过程中你的应用会与此服务器进行通信。
    2. 一个印象笔记 API Key,它包括两个值:一个consumer key 和一个 consumer secret。如果你还没有 API Key,你可以到这里获取
    3. 一台运行 OS X 10.7.4 (Lion) 或更高版本系统的 Intel Mac。
    4. Xcode 4.5 或更新版本。(可从Mac App Store 获取。)
    5. iOS 6.0 或更新版本的 SDK。
    6. Apple 提供的 Xcode 命令行工具库。
  • 下载和安装 Apache Cordova

    To download and install the PhoneGap framework, which includes the Apache Cordova library, follow the steps described in the the PhoneGap documentation. After successfully completing all of thes steps described there, you should have a sample Xcode project that builds and runs in the iOS simulator. The application should look and behave as it does in the PhoneGap documentation.

    为了下载安装包含了 Apache Cordova 库的 PhoneGap Framework,请参照 PhoneGap 文档 中描述的步骤。在成功完成里面描述的所有步骤之后,你应当已经有一个可以构建并在 iOS 模拟器中运行的 Xcode 示例工程了。应用的运行情况、运行结果应当与 PhoneGap 文档中描述的一致。

    安装印象笔记 JavaScript SDK

    印象笔记 JavaScript SDK 托管在 Github 项目页面 上。下载这个文件的 压缩版本 ——你可以在该页面接近底部位置的 README 中找到直接下载的 URL 链接。接下来,下载 jsOAuth 库。将这两个 JavaScript文件 放置在项目的 www/js 目录下。

    为完成安装,请确认你在项目的 index.html 文件的 <head>元素中包含了这两个 JavsScript 文件.

  • 添加 OAuth 配置和登录的回调函数

    app的作用域内,添加以下语句。一定确保你用自己的 consumer key 和 consumer secret 替换掉了占位字符串,并且要记住当你把应用部署到印象笔记产品环境中时,要讲evernoteHostName 的值改为www.evernote.com

    接下来,我们要添加登录函数,开始 OAuth 流程。

    (注意:你需要将callbackUrl的值替换为应用相应的值。)

    将此函数绑定到一个用户事件上(例如点击一个按钮或提交一个表格),将其整合进你的应用中。在我们的 PhoneGap 示例中,我们已经将 app.loginWithEvernoteindex.html 中的一个按钮进行了绑定。

    注意到我们将一个对象字面量传递给了 oauth.request;这个对象列举了successfailure 回调函数。正如你想的那样,当请求成功或失败的时候会分别调用对应的函数。要注意:一次失败的登录尝试仍然是一次成功的请求;failure 只有当出现技术错误,导致请求无法正常完成的时候才会被调用——比方说网络连接有问题。

    下方给出的successfailure 的实现会完成 OAuth 流程,如果成功完成,会产生一个有效的认证 token 用于调用印象笔记云 API。这些函数也需要定义在app 作用域内:

  • 测试你的应用

    在你修改了上面提到的源文件后,在 iOS 模拟器中构建并运行你的项目。如果一切正常的话,应用运行之后点击 “Click Me” 按钮会把你带到印象笔记的认证页并提示你输入用户名和密码。在成功认证之后,展示登陆界面的网络视图会消失,一个用户笔记本的列表会出现在 Xcode 的日志部分。

    你可以从 Github PhoneGap 示例项目 上下载我们的工程。

  • FAQ’s

    我能使用这个 SDK 创建一个基于浏览器的印象笔记客户端吗 ?

    或许不行;大多数浏览器不允许跨域发送 XMLHTTPRquest,所以此版本的实现在多数环境下很可能不能正常工作。

    我可以在哪些地方用到它?

    大量运行于移动设备(比方 PhoneGap)和服务器(比方 Node.js)的平台或框架都可以很好地使用印象笔记 JavaScript SDK 来工作。

  • 总结

    如果你需要帮助或者有关于印象笔记 JavaScript SDK 的问题,尽管联系我们的开发者支持部门。

    Be sure to look at our working PhoneGap example project from Github.

    一定要看一下我们在 Github 上的这个可运行的 PhoneGap 示例工程