由Web Service应用看信息的一站式服务

    当初玩开心网的时候,每天要种菜、收菜、偷菜,要不停的换车位,耗费大量的时间,在同学那里看到了开心网的外挂,可以自动进行开心网的操作,真是方便多了。但这种外挂不是合法的,其实是用桌面程序模拟了人和浏览器,开发这种程序的难点是获取来回传送的数据格式,当然数据格式开心网不会对外提供,这就需要开发人员破解。安装一个Sniffer或者Wireshark(Ethereal)等网络抓包工具,在浏览器中进行开心网的偷菜等操作,就可以在抓包工具中截获来回传送的html文本,进行分析之后,可以获得数据格式,然后在程序中模拟http客户端,以破解的数据格式发送和接受数据,就可以开发出类似开心网的外挂了。
    如果是说开心网的外挂式是法的,但也有合法的例子。今天安装了谷歌金山词霸2.0正式版,发现在查词的结果里面有谷歌的搜索内容(如下图)。经过测试发现,当查一个词时,软件还访问了谷歌字典( http://www.google.cn/dictionary)和谷歌金山词霸汉语站(http://g.hanyu.iciba.com)等站点,数据格式有xml和html等,把这些从网络获取的信息也显示在词霸查询结果里。这是金山软件与Google(谷歌)联合开发的,访问了web上的信息,当然这种访问方式是合法的。
图1谷歌金山词霸2.0正式版的搜索结果中含有谷歌搜索的内容
    正是谷歌金山词霸这样把各处信息集中到一处的一站式服务方式,极大了方便了软件的使用者,当然也提高了用户的满意度,使得更多的人来使用软件,从而软件提供商也获得丰厚的利润。
    对于越来越挑剔的用户,信息融合是必然的趋势。从以前的数据仓库技术,到Web Service技术,都在尽力把分散的信息集中起来,为用户提供一站式的信息服务。而信息的发布者则可以从集成的程序里扩大自己的影响力,例如上面的谷歌金山词霸,通过这个软件使谷歌为更多的人所使用,其影响力也就变得更大了。在这种趋势下,企图把自己封闭起来夜郎自大式的做法只会被抛弃,于是越来越多的网站提供编程接口,叫做OpenAPI,方便程序的开发者通过这些API把网站提供的信息集成进去。如果说网站以前只能通过浏览器来扩大自己的影响力,而现在可以通过桌面应用程序、手机应用程序等方式来扩大影响力。
    既然我们的目的是信息的融合,从技术上能够达到目的就可以了,从软件里面访问html和web service对终端用户来说又有什么区别呢?所有基于web的东西都可以叫做web service,这是一本书里面所说的。实际真的是这样,难道程序只能处理web service提供的信息?用程序解析html不是什么难题,如上所述,开心网的外挂可以开发出来,其他类似处理html的程序也一样可以开发出来。
    毕竟处理html文本不如xml、json等格式的信息直观,出于通用性的考虑,以SOAP Web Service和REST Web Service的方式发布服务还是最佳选择。Web Service的应用也越来越多了,例如http://www.webxml.cn提供了天气预报、获取ip地址所在城市的web服务(不允许商业使用),通过这两个服务就可以提供与QQ里的天气预报类似的功能。而且很多网站的OpenAPI也是以Web Service的方式提供的。
    虽然Web Service的应用在蓬勃发展,但Web Service的客户端程序却要承担一定的风险,如果遇到Web Service不可用的情况,就不能提供相应的功能了。例如安装谷歌金山词霸所在的计算机没有连网,那就无法使用Google搜索的结果了;如果发布天气预报的Web服务暂时不可用,软件上的天气预报就无法提供了。但这些功能对用户来说都是无关大局的,软件没有这些功能可以照常使用。
     Web Service不可用的情况,对于业务应用系统来说就不是这么随意的了。例如遇到有人攻击DNS服务器造成大面积网络瘫痪的时候,Web Service就不可用了,从而造成系统的功能不可用,就要暂停对应的业务,这造成的影响和损失可能是巨大的。这也就是企业对上SOA系统谨慎的原因。
    大量使用Web服务的程序可能是脆弱的,对企业应用来说有一定的风险,但对个人用户来说不是什么大不了的事,服务不可用,可以等等再用嘛。随着大量Web Service的发布,开发新的软件时就可以集成已经存在的服务了,而不是重新开发所有的功能。也许在一个软件里面能够把我们所需要的所有功能集成在里面,可以浏览新闻、查看天气预报、收发电子邮件、和QQ好友聊天、去开心网偷菜、去淘宝买东西等等,而不需要打开多个软件和多个网站了。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值