作者:船夫@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需要的key和secret,需要先翻墙:
正文:打开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需要的key和secret替换进去就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地址最后的那个“/”,把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,配合GAE的api效果不错,关键是密码可以不一样,安全性更高。
设置完新密码后还会返回到这个界面,不用管它,设置一遍即可,这个api密码是以最后设置的KEY为准的。比如最早是一长串字符,你改成了123456退出,那么123456就是API的密码,但下一次再进去认证的话,这个KEY又变成了长串字符,它是变动的,你只需改了它然后退出就可以用了。想改api密码的时候再进,不改就不要进啦。
API的搭建和认证工作已经完成,为了你能更快的熟悉API在第三方客户端的应用,下面我以tweetdeck为例,简单的说一下怎么使用这个api。
首先,下载安装Adobe 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(免翻墙)
--
Posted By GFW BLOG 功夫网与翻墙 to GFW BLOG(功夫网与翻墙) at 2/01/2011 12:38:00 AM --
1、我们的订阅地址:http://feeds2.feedburner.com/chinagfwblog。2、发一封标题为GFW的邮件到fanqiang70ma@gmail.com,就可获取翻墙利器赛风新地址。附《数字时代》赠阅版。3、本站热烈欢迎各位朋友投稿或推荐文章,请发邮件至chinagfwblog[at]gmail.com。
停止订阅,请发邮件到
gfw-blog+unsubscribe@googlegroups.com
没有评论:
发表评论