一个支持OAuth的Twitter API Proxy――GTap

作者:zhyu  来源:http://zhyu.me/twitter/a-support-oauth-the-twitter-api-proxy-gtap.html

2010.8.31是一个值得纪念的日子,这一天Twitter正式终止了Basic Auth验证。官网的通知如下:

August 31, 2010 Basic Auth has been deprecated. All applications must now use OAuth.

使用OAuth验证对我等天朝人民来说就意味着至少要翻墙进行一次验证才能使用Twitter这一伟大的工具,也意味着以前基于Basic Auth的API都无法使用了,所以翅膀今天要介绍GTap这一可以OAuth的API。(大家常用的twip也在近日加入了OAuth支持,但是架设相 对复杂,且作者仍在完善中,故这里先不做介绍)

GTap的安装过程如下:

1.所需环境

因为GTap是架设在Google App Engine上的,所以Google App Engine SDK for Python,在这里按照使用平台下载安装。另外还需要Python,Ubuntu下系统本身带有Python,Windows下需自行安装Python2.5或以上版本。

2.注册Twitter应用

这里注 册一个Twitter应用。“Application Name”除填写的内容会是你之后发推显示的来源,即“from xxx”;在“Application Type”的地方,选择“Browser ”;在“Default Access type”的地方,选择“Read & Write”;在“Use Twitter for login”的地方,不要打勾。至于很多人都很关心的“Callback URL”项,则不需要关心,可随意填写。完成注册后得到Consumer key、Consumer secret这两个数据。

3.注册Google App Engine应用

App Engine 管理控制台创建以及管理 App Engine 网络应用程序。点击“创建应用程序”按钮。按照说明注册一个应用程序 ID,即一个对该应用程序唯一的名称,如gtapserver1,那么你的程序网址就是http://gtapserver1.appspot.com/

4.获取并修改GTap

然后到GTap的项目主页,在右边的Featured downloads处可以看到GTap的各种版本,这里选择最新的0.4.1,下载后解压,得到gtap-0.4.1文件夹。

编辑 app.yaml 文件,然后将 application: 设置的值从“your_application_id”更改为你在google注册的应用程序 ID,如gtapserver1。鉴于现在多数地区appspot的加密传输已被墙,所以建议把该文件第12行的“secure: always”删掉。

编辑 main.py 文件,将其中第14,15行的内容,分别改为你在Twitter申请应用时获得Consumer key和Consumer secret。

5.上传GTap

Ubuntu下:将gtap-0.4.1文件夹放到Google App Engine SDK文件夹下,然后在Google App Engine SDK文件夹处打开终端,运行命令

python appcfg.py update gtap-0.4.1

按提示输入gmail邮箱和密码(密码不明文显示)。

Windows下:与Ubuntu下基本相同,只需将终端改为命令行,运行

appcfg.py update gtap-0.4.1

6.使用GTap

首先打开你的GTap应用,按照上面的实例即为http://gtapserver1.appspot.com/ ,会看到这样的界面

点击OAuth验证的按钮(这一步OAuth验证需翻墙,方法很多,不再赘述,可以参加翅膀以前写的日志),会跳转到Twitter,登录,然后选Allow,会跳转到如下界面

然后点击you can change it now,进入下面的界面

在define your new key of this api:后面填入你喜欢的密码(这个密码就是你使用这个api所要用的密码,可以与Twitter密码不同),然后点击Change the Key提交就好了。

这样一来你的API就架设好了,在支持API的客户端中直接使用就可以了,不要忘记结尾的“/”,如http://gtapserver1.appspot.com/

PS.

http://gtapserver1.appspot.com/ 并非翅膀所架设,感谢原作者~


1 条评论:

匿名 说...

That is a good tip especially to those fresh to the blogosphere.
Short but very precise info… Appreciate your sharing this one.

A must read post!

Feel free to surf to my web-site ... african mango plus