Twitter Connect?
2009年01月29日
昨天晚上做了一个 Twitter 的小应用,就是用户在博客留言的时候,如果选择把留言要同步更新到 Twitter,就会让用户输入 Twitter 账号和密码,留言成功之后,该条留言也自动更新 Twitter 上。
这个 Twitter 应用我个人觉得很棒,从用户和博主两个方面来思考都是有好处的,对于用户来说,这是留言汇聚的一种方式,比如大部分的博客都有这样的功能,你的所有留言就可以都汇聚到 Twitter。对于博主来说,用户把他在你博客上的留言再次分享到 Twitter,其实也在宣传你的网站,这样也是我们使用 Twitter 这类社交网站最大的好处,利用 SNS 网站给自己博客带来社交性。

把博客留言同时发布到 Twitter
但是这个服务还有一个硬伤就是需要用户输入他的 Twitter 账号和密码,密码对于服务器来说是明文可见的,所以用户在使用这个服务的时候,就会想这是否安全,这个服务是否会存取我的密码,这也是很多 Twitter 服务和应用目前存在的最大问题。(当然我这个应用不会存储你的 Twitter 密码,你尽可放心使用)。在 Twitter 未解决这个问题之前,我们看看其他服务是怎么实现的:
Facebook Connect 是2008年最火的的一个服务,它的推出开始让 Facebook 成为互联网中心的梦想开始慢慢实现,我在 Facebook Connect 试用这篇文章中测试了一把 Facebook Connect 的 WordPress 插件,它能够让你用 Facebook 账号登陆 WordPress 博客,邀请你在 Facebook 上的好友加入这个博客,如果你在博客上留言了,该条留言也能更新到你的 Facebook Profiles 上去。其中在使用 Facebook 账号登陆博客的时候,它是弹出一个窗口,让你输入你的 Facebook 账号和密码。我们可以看到这个窗口的链接是 Facebook.com 的,用户输入账号和密码的地方其实还是在 Facebook 上。

Facebook Connect 登录窗口
使用 OpenID 登陆支持 OpenID 协议的网站的时候也是跳转 OpenID 提供者,然后登陆之后 OpenID 提供者会给网站返回登陆成功的状态。所以输入密码的地方还是在 OpenID 提供者。
而 Twitter 允许用户在除了 Twitter 之外的网站使用 Twitter 的账号和密码,虽然这样很方便,产生了一大堆 Twitter 服务,也造就了 Twitter 的成功,但是这样一直存在着安全隐患,前段时间就发生的 Twitter 钓鱼网站和黑客盗取一批 Twitter 名人账号,所以 Twitter 需要有其他安全登陆和验证方式,而不是让用户直接输入密码,确保 Twitter 账号使用的安全,这样 Twitter 的账号就会使用的更广泛,比如我们可以让用户用 Twitter 登录我们的网站和博客,邀请在 Twitter 上的好友加入该网站,把用户在网站上的行为更新到 Twitter 上,彻底整合 Twitter 到你的网站,利用 Twitter 强大的社交性来推广和营销网站。
可喜的是,Twitter 也意识到这个问题,开始测试支持 OAuth 协议,OAuth 协议致力于使网站和应用程序能够在无须用户透露其认证证书(如密码)的情况下,通过 API 访问某个 Web 服务的受保护资源。更一般地说,OAuth 为 API 认证提供了一个可自由实现且通用的方法。这样我们在使用 Twitter 第三方服务的时候,无需透露密码。如果你想加入 Twitter OAuth API 测试,可以点击这里了解详情。
Update: Twitter 正式推出 OAuth 用户验证协议之后,已经有相关的更好的实现方法:基于 OAuth 的 Twitter Connect for WordPress 插件。
32 条评论 添加你的评论 →

1. Denis | 2009:01:29 - 02:02:24 | #
Jason 说不能留言,我测试下!
2. Jason Ng | 2009:01:29 - 02:03:18 | #
那句话,我要版权费。
3. Jason Ng | 2009:01:29 - 02:04:21 | #
我也试试,难道刚才是我RP问题?
4. iFire | 2009:01:29 - 02:28:41 | #
@denishua 最喜欢这类交互性的微博应用
5. Denis | 2009:01:29 - 02:31:34 | #
看来我应该把他放出来!
6. iFire | 2009:01:29 - 02:33:26 | #
赶紧放出来吧!我这儿傻了吧唧地在页面里找下载链接呢
7. Denis | 2009:01:29 - 02:35:16 | #
现在又是 JS 又是 PHP,我看看怎么放出来好!争取后天之前!
8. Hong Xiaowan | 2009:01:30 - 15:50:51 | #
JS版的可以节约服务器资源,而且可以避免Twitter API的IP限制,同时,也比PHP版本安全一些。
9. Denis | 2009:01:30 - 17:48:25 | #
JS 版本始终无法和 WP 完美结合,除非博客也采用 AJAX comments
10. Hong Xiaowan | 2009:01:31 - 11:56:37 | #
你失踪好多年
11. dupola | 2009:02:01 - 01:31:20 | #
晕。这俩人一个追着另一个问,你失踪到哪儿去啦…………
12. Mr. Chen | 2009:01:29 - 13:52:48 | #
创意+技术=很不错的产品
13. geek2live | 2009:01:29 - 16:12:34 | #
Twitter Connect?http://fairyfish.net/2009/01/29/twitter-connect/#more-1840
14. hamo | 2009:01:29 - 20:10:12 | #
Twitter Connect的名字似乎很潮流
15. Elton Disney | 2009:01:30 - 01:34:20 | #
哈哈,又是 connect~~
潮人 啊
16. criss | 2009:01:30 - 10:16:05 | #
原来还没放出来呢···
17. Hong Xiaowan | 2009:01:30 - 15:34:37 | #
直接用JQuery+API可以解决这个问题,不过,还是避免不了是否被钓鱼的问题,OpenID和OAuth是个比较好的方案。
18. dimlau | 2009:01:30 - 21:21:00 | #
我觉得还是JS好一些
19. yanxc | 2009:01:31 - 14:39:07 | #
怎么都无法找到一些实用的博客connect应用。
20. Hooopo | 2009:01:31 - 15:01:38 | #
什么是“实用博客connect应用”?
21. Hooopo | 2009:01:31 - 14:59:26 | #
OAuth不错!!还没接触过OpenID
22. NetPuter | 2009:01:31 - 19:48:06 | #
为什么需要登录 Twitter 呢?
如果用户已经登陆了 Twitter 就直接发送就好了,如果没有就提醒他们到 Twitter.com 登录。
这样不是更安全嘛,但这样的登录方式我YY了一下,大概就是利用
http://twitter.com/home?status=消息内容
这样子实现了~
23. Denis | 2009:02:01 - 01:24:38 | #
呵呵,这样就不是整合 WP 留言和 Twitter!
24. NetPuter | 2009:01:31 - 19:49:51 | #
如果真的要放出来,还是加密下源码比较好,以防小人修改~
25. sherry | 2009:02:02 - 13:48:10 | #
我還在傻乎乎地找鏈接,等發布呢。。。。
26. Sean | 2009:02:03 - 16:38:04 | #
很郁闷 我用了分享收藏插件 鼠标移图标上没用
27. leesum | 2009:02:04 - 18:46:23 | #
日志的评论具有针对性,更新至twitter是否太过于发散?
28. yinheli | 2009:03:30 - 17:07:52 | #
鱼兄呀.很期待你的这个代码.
我自己用curl写了个.但是不知道你的是怎么判断用户名和密码的.比较好奇.能发份代码给我吗?
29. Denis | 2009:03:30 - 17:38:25 | #
Thread Twitter 插件里面有相关代码!
30. yinheli | 2009:03:30 - 20:32:45 | #
那我研究一下去.谢谢.哈哈.其实我都到你这里测试了一下….抱歉.
31. shineagle chen | 2009:06:10 - 16:57:12 | #
这个东东好用不?
32. zhenchon | 2009:11:08 - 01:10:55 | #
我只是路过来看看的