15
关于Ubiquity真正厉害之处
Ubiquity发布已经有一段时间了,使用Ubiquity也有一段时间了,甚至于为Ubiquity编写脚本都有一段时间了(想要了解的朋友可以点击这里和这里查看)。一直觉得Ubiquity应该是一个很让人激动的技术,却一直没有想到具体的细节。今天现在这里写点想法,希望能有朋友和我讨论。
Ubiquity最有意思的在于可以在一个页面通过命令行的形式去调用其他网站的服务。有人说,Ubiquity是建立在其他网站提供OpenAPI的大环境下。可是,事实上并没有太多网站提供OpenAPI,毕竟虽然这是一个趋势,却是网站开发人员的安全噩梦。况且,如果Ubiquity是建立在其他网站API基础上的,那么还不如做成一个类似于ENSO的应用程序,岂不是更方便。其实Ubiquity真正厉害的地方反而在于它是建立在浏览器基础上的,也就是可以与其他网站共享session,cookie。从而让不提供OpenAPI的网站也具有了API的功能。大家都知道,所谓session或者cookie主要是为了模拟网络长连接,记录状态的一个技术。对于firefox来说,即使当前tab页面关闭了,session和cookie也不会随着被删除,所以对于登录来说,只要firefox没有关闭,重新打开需要认证的页面,一般情况下并不需要重新登录。 Ubiquity正是利用了这个道理,在调用其他网站内容的时候,利用firefox的基础构架,完美绕过了认证登录。这样说可能有点抽象,我拿我开发的开心网状态更新脚本来举一个例子:
execute: function( status ) {
jQuery.ajax({
//更新用户状态不需要了解用户名或者密码
type: “POST”,
url: “http://www.kaixin001.com/friend/status_submit.php”,
data: {’state’:status.text},
success: function(fb) {displayMessage(’Kaixin status updated’);
},
error: function() {displayMessage(”Error updating Kaixin status.”)
}
});
},
这个脚本的使用前提是浏览器必须要登录过开心网或者设置自动登录。这样在使用脚本的时候,可以充分利用浏览器的信息实现自动更新相应用户的状态。这就让本来没有API接口的开心网有了API的功能。
更多思考,未来的firefxo不知道有没有可能做成一个运行于后台的服务,在后台提供类似登录信息,session,cookie等功能,而Ubiquity成为一个集成在操作系统中的软件,这样就可以随时随地的使用互联网。甚至还会有人在Ubiquity的基础上开发新的GUI工具,这样就真的实现了网络于电脑的无缝集成。


