twip是本人在google code上开设的一个开源项目,目标是建立一个基于PHP的twitter API proxy。
什么是twitter API proxy?
简单地说,就是把客户端发过来的POST和GET请求转发到原始API地址,并将返回的http header和内容返回给客户端,实现了原始twitter API的所有功能。而对客户端来说,除了提供一个可供配置的API地址选项,不需要做任何代码上的更改
现有的Twitter API proxy程序主要有两个:基于Python的birdnest,基于PHP的tweetr。birdnest不用多说,功能很完备,可以在Google App Engine上架设,方便了没有网页空间的用户。tweetr则提供了基本的功能,但是又不完备(不返回header信息,没有将客户端类型的POST值传至服务器)。
本来twip项目准备从tweetr项目fork,专门维护一个PHP版twitter api proxy,但是发现tweetr的面向对象风格的代码实在读着不爽,加上API proxy本身没有太多技术含量,所以决定还是自己实现一个。
目前为止实现的还算不错,已经非常可用了。
如果你想自己架设一个,checkout代码后,修改config.php中的选项,注意$webroot变量的修改,然后上传到国外的虚拟主机空间即可。
附TwitterFox的API地址修改方法:
系统中查找nsTwitterFox.js文件,修改其中的TWITTER_API_URL为你架设的API proxy地址

if (!-f $request_filename){
set $rule_0 1$rule_0;
}
if (!-d $request_filename){
set $rule_0 2$rule_0;
}
if ($rule_0 = “21″){
setenv HTTP_AUTHORIZATION:$http_authorization;
rewrite /. /index.php last;
}
[回复]
twiterfox升级了 重新改api
[回复]
为什么我的还是不能用呢?
我就是直接将twip传到国外服务器上,其他都没改,也出现了安装成功的提示(即页面出来了),但是用在客户端上就是不行,用别人的可以。
我的是http://since1985.co.tv/twip/,帮我看下什么原因好吗?谢谢
[回复]
fastCGI模式运行的PHP,不支持HTTP Basic Auth,我在代码里的workaround对你的主机无效。请自行解决这个问题。
[回复]
yegle你要火了啊
[回复]
hi.
这里http://www.tweet-r.com/ 不太好用。不翻墙使用的话,会显示twitter api overload的提示。这个http://www.twibble.de/sw/desktop/twibble.air也不太好用,如何把博主的这个工具应用到这个tweet-r客户端和twibble client呢?
[回复]
MS手机客户端不能用啊
[回复]
为什么在Gravity里面不能用,而在Twihrl和Twitese都是正常的?
[回复]
William 回复:
三月 17th, 2010 at 17:47
是,不能正常使用!!
[回复]
我建好后,直接在浏览器输入http://foo.byehost.com/twip/?statuses/friends_timeline.json可用,但在.getJSON中调用始终出错(因此客户端也不能使用),不知何故?
[回复]
域名绑定到子目录空间怎么设置啊?
t.xxxx.com 绑定到了htdocs/twitter/目录
API的文件放置到t.xxxx.com/twip(htdocs/twitter/twip)中,webroot=’/twip’.能够访问首页,但是访问test.php显示失败,修改为webroot=’/twitter/twip’之后,首页无法访问.但是用www.xxxx.com/twitter/twip能访问.
怎么设置才能让子目录绑定的域名能够使用呢
[回复]
我在godaddy免费空间架了一个,貌似不能用啊,http://twip.joysboy.info,是什么问题?
[回复]
yegle 回复:
三月 4th, 2010 at 11:17
因为godaddy的免费空间会在返回的内容最后添加广告代码
[回复]
小峰JoysBoy 回复:
三月 4th, 2010 at 11:21
无语。。。。放弃,不折腾了
[回复]
这个。。。。。。。有了ssh用不到。。。
[回复]
已经测试好了twip,但是在最新版本的twitter for iphone中尝试使用API遇到问题:
1、twip已经通过浏览器设置好了token,并且反复登录正常;
2、在twitter for iphone中新建用户:
-填写用户名,填写twip的api密码
-点击设置按钮填写http://yourdomain.com/index.php
3、点击保存,出现:
Xauth migration failed – no token handed bank….
[回复]