教程:跟着船夫三步简单搭建推特twitter oauth api

船夫
appspot今早再次被墙导致诸多基于GAE的应用如API和博客等无法使用,请大家尝试修改hosts解决,IP:203.208.39.104 详见第三步分隔符内容 请老艾@帮推

作者:船夫@boatman  来源:

此 教程主体上为三大步骤,对于以前搭建过的推友来说内容略显繁琐,但为了使更多推友,尤其是新手,能够顺利通过GAE上推,我觉得这种仔细是必要的,所以我 夸张地称“此教程可能是目前最为详尽的API搭建教程”。虽然我认为教程已经够详细了,但推友还是会在搭建过程中出现各种问题,推上不适合做详细解答,如 有疑问请仔细研究教程!google是你最好的老师!也可留言,我会尽快解答。如需其他联系方式,请上推特索取,谢谢理解。

 

跟着船夫@boatman三步简单搭建推特twitter oauth api(教程结尾处有两枚API与推友分享)

2010/12/14更新)由于炸药奖的关系,前段时间appspot无法正常访问,导致GAE API只有修改hosts文件才能使用,不过现在appspot已经解封恢复正常访问,API也能正常使用了,所以大家不妨搭建一个,还是非常实用的。 

==========我是分隔符=======以下为教程==========

第一步,注册GAE应用程序:  

登陆或注册Google App Engine(简称GAE)账户。因为我们要通过GAE来搭建API,所以肯定要有账户了,如果你有Google账户,可以直接使用(没有的注册一个也很快的注册地址 https://appengine.google.com/ )。点击Create an Application按钮,输入唯一的应用程序注册名(6个或以上小写英文字母),标题随便写。

 点击Create Application。完成后,如果第一次使用,谷歌会要求输入手机验证码,必须加上国家代码,中国大陆是+86,比如移动号码:+86136XXXX6666,然后把短信收到的验证码输入进去,提交,谷歌就会提醒你创建成了。第一步“注册GAE应用程序”成功。建议老用户也注册一个新的GAE程序,降低搭建API过程中的出错率。如果收不到短信,请点击try again重新发送尝试,或点FAQ向google反映,具体请搜索关键字“GAE 收不到短信 china mobile”。 

第二步,注册Twitter程序,获取oauth需要的keysecret,需要先翻墙: 

正文:打开https://twitter.com/oauth 登陆twitter

点击注册程序Register an application

如果网络信号不好,上传程序图片可能会导致无法注册,建议先不传图片。 

程序名就是api显示的个性名称,必须是唯一的,介绍必须在十个字符以上,否则无法注册。

 提要:1. 注意红圈中的事项

 

2.Callback URL 务必填写为http://XXXX.appspot.com/oauth/twitter/callback

“XXXX”为注册的GAE程序名,比如我注册的“followboatman

3.Default Access type 要设置成 Read & Write ,否则无法发推 

 4.完成注册后得到 Consumer key Consumer secret,建议不要关闭此网页,或保存一下这两个数据。

 

至此,我们的推特程序已经注册成功了,如果你想上传图片更换API个性名称,可以登陆https://twitter.com/oauth 点开你注册的推特程序,然后点Edit application settings进行修改。

 下面着手api认证。


第三步,进行api认证(所需软件及GTAP文件打包网盘下载

http://u.115.com/file/f82668225 (115网盘,请选择备份下载)

 http://www.rayfile.com/files/e175bde6-077a-11e0-8f87-0015c55db73d/ (据推友反映不稳定,速度慢)

 ): 

1.安装相关软件及修改文件,完成api建设。上传需要安装两个软件,首先安装python.msi(请安装2.x版本),然后安装GoogleAppEngine.msi,一定要按顺序安装,建议默认安装路径,软件可以自己搜索下载,当然我提供网盘里面有。 

2.修改gtap-0.4文件(此文件可自行下载,建议直接下打包的)。

解压完“oauth_API_boatman”文件保存到任意位置打开文件夹,gtap-0.4文件,修改app.yaml,选择打开方式为“写字板或记事本”,打开后修改第一行“application: 替换为申请的GAE用户名”相信这个不用多说了,比如我的修改为“application: followboatman”,其它地方我已改好,你们就不用改了。

修改main.py,选择打开方式为“写字板或记事本”,要改什么一目了然。把前面注册推特程序时获取的oauth需要的keysecret替换进去就OK了,注意填在那两撇里面。

CONSUMER_KEY = '替换为注册TWITTER应用程序得到的KEY即可'

CONSUMER_SECRET = '替换为注册TWITTER应用程序得到的SECRET即可'

3.上传 

打开GoogleAppEngine软件,File,然后点Add Existing Application,再点browse…,选择gtap-0.4文件夹,点击Add 

添加成功后,点一下这个应用程序,选择绿灯,RUN.跑过之后,选择Deploy,输入你的谷歌邮箱(当然是注册GAE的邮箱了)和密码点OK,等着吧,大概不到一分钟,对话框提示“Closing update: new version is ready to start serving.You can close this window now”,上传成功。(如果字符里面有error,说明你哪一步肯定错了,要核对一下,一般跟随船夫的脚步错不了,哈哈) 

至此,GAE oauth api 已经搭建成功。 

API地址http://xxxx.appspot.com/

千万别忘了API地址最后的那个“/”,把xxxx换成你的GAE程序名,比如我这个教程建立的followboatman,也就是 

http://followboatman.appspot.com/ 还有最后一步,认证。 

 

appspot已恢复正常,无需修改hosts,此步现在可忽略,若以后某些时期出现无法访问的情况再修改】修改hosts文件:由于炸药奖的关系,appspot无法正常访问,所以为了保证搭建的API能够使用,请现在在你的终端设备,以Windows系统为例(其他终端如WM安卓IOS请自行搜索,黑莓不支持修改hosts),打开C:\Windows\System32\drivers\etc ,找到hosts,以记事本的方式打开hosts文件,在最尾端添加以下IP字符(一个程序名只可对应一个IP地址,不能重复,建议使用第一个):
203.208.39.104
替换为你的GAE程序名.appspot.com
209.85.227.141
替换为你的GAE程序名.appspot.com
<!--[if !supportLineBreakNewLine]-->
<!--[endif]-->

例如:203.208.39.104  followboatman.appspot.com

其中第一个ip地址对应的API地址为http的,第二个是https的,但不能一个API同时使用这两个API地址哦,也就是说hosts文件中只能填其中之一。本教程搭建的api都支持,当然教程里是以http不加密的api展开的,因为很多地区https已经被封锁了,当然你可以自己试试,按需使用appspot已恢复正常,无需修改hosts,此步现在可忽略,若以后某些时期出现无法访问的情况再修改】 

 

4.步必须先翻墙才可完成认证。 

翻墙先,然后浏览器中打开你的api地址 

http://followboatman.appspot.com/

出现以下界面就说明搭建成功了。

 

 最后的话,仔细看:点sign in with twitter,登陆后点Allow,the new key里输入一个密码作为你使用这个API的密码,可以设置的与推特密码不同。 

可能有些人不明白这一句话,简单的说,你在有些第三方软件比如TweetDeck中使用这个API,你就不用使用推特密码了,你的登陆方式为:推特账户+API密码+API地址,这样就能登陆了。但如果你设置的API密码和自己的推特密码一样,直接输入推特账户+推特密码+API地址就行了。PS:有些第三方软件API密码必须和推特密码一样才能使用。自己搭建的api,密码的设置设置为推特密码一样是最方便的,密码也只有自己知道,也很安全。使用别人提供的api时,建议大家使用TweetDeck,配合GAEapi效果不错,关键是密码可以不一样,安全性更高。 

设置完新密码后还会返回到这个界面,不用管它,设置一遍即可,这个api密码是以最后设置的KEY为准的。比如最早是一长串字符,你改成了123456退出,那么123456就是API的密码,但下一次再进去认证的话,这个KEY又变成了长串字符,它是变动的,你只需改了它然后退出就可以用了。想改api密码的时候再进,不改就不要进啦。 

 

 

API的搭建和认证工作已经完成,为了你能更快的熟悉API在第三方客户端的应用,下面我以tweetdeck为例,简单的说一下怎么使用这个api

首先,下载安装Adobe AIR

http://get.adobe.com/cn/air/

然后下载安装TweetDeck的桌面客户端

http://www.tweetdeck.com/desktop/

(这两个软件网盘打包中有)

此步仍需翻墙才可成功设置!首先运行tweetdeck,添加twitter帐户和“twitter密码”,登录成功后,点击设置(图标为小扳手),再次添加推特账户,重新输入twitter账户和“设置的api密码”(如果你设置的api密码和推特密码不一样,一定要输入api密码才可使用此api),点开下面的Advanced Options,输入你搭建好的api地址,比如本教程中的:http://followboatman.appspot.com/

不要忘了最后的那个‘/

然后点击Verify认证,不出意外的话,你应该已经刷出来推了,但字体可能不能正常显示,打开设置,colors/font 把字体改为international即可。如果还刷不出来就重新把这几个步骤来一遍。以后用tweetdeck不用翻墙就可以上推了,不信的话关闭翻墙软件,重新启动tweetdeck试试吧。API在其他客户端的应用和这个原理是一样的,具体别的软件怎么用自己慢慢琢磨吧,不知google之。

 

你若通过此教程成功上推,希望上推告知我,分享喜悦,有问题可以联系我。你若还搞不定,没关系,我提供两个API供推友们使用,但账户安全要自己负责哦,所以还是尽快搭起专用的更快速更安全的API吧!供推友们使用的oauth API(当无法正常访问时,同样需要修改hosts):

http://followboatman.appspot.com/ 名字叫“墙上的另一块砖”

http://twiforcn.appspot.com/ 名字叫“草泥马推特

结语:善于探索,关注船夫。欢迎推上围观 @boatman http://twitter.com.boatman 

 

欢迎转载到您的博客,请注明出处,长期更新 http://is.gd/i6sGe


—————————————————————————————————————————

需要翻墙利器赛风? 请阅读和关注中国数字时代

推特用户请点击这里免翻墙上推特

请点击这里下载翻墙软件

更多翻墙方法请发电邮(最好用Gmail)到:fanqiang70ma@gmail.com

请阅读和关注中国数字时代、翻墙技术博客GFW BLOG(免翻墙)

请使用Google Reader订阅中国数字时代中文版http://chinadigitaltimes.net/chinese/feed),阅读最有价值的中文信息;以及GFW BLOG(功夫网与翻墙)http://feeds2.feedburner.com/chinagfwblog,获取最新翻墙工具和翻墙技巧信息。


没有评论: