日期:2010-12-15  浏览次数:21100 次

用ASP、VB和XML建立互联网应用程序(1)


在个人电脑上使用单机版应用软件的时代很快就要过去了,现在大部分的应用程序都开发出网络版或大都需要共享网络上丰富的数据资源。我们虽然写了很长时间基于客户端/服务器的应用程序,但是这些程序大部分只是运行在小型的局域网内部。然而,有很多客观的原因要求我们要修改这些程序以使它们能够运行在一个企业的内部网甚至是国际互联网。

  是什么原因迫使我们做呢?首先,随着一个企业的规模逐渐扩大,公司可能会跨地区甚至跨国经营,每个分公司的员工的数量也会逐年增多,这些在外地的员工肯定需要频繁地访问总公司的数据库资源;其次,集中应用程序的数据资源,能够使你更好的监控数据库的访问和使用情况。第三,你可以通过从一个集中的位置获取全局应用程序设置,从而维护和更新它们,最终达到缓减应用程序更新的目的。第四,尽量从Web服务器上访问数据库而不是从客户端上访问数据库,这样可以避免通过网络传送登录信息和客户密码,从而避免安全隐患;而且,使用浏览器从后台获取数据,这样能够避免刷新整个页面。

  这就要求我们创建一个运行于互联网上的应用程序,而假如想创建一个运行在HTTP协议上的VB程序,那么关键就是使用XML和XMLHTTPRequest对象。这个对象是Microsoft XML分析器(msxml.dll)的一部分,XMLHTTPRequest对象可以让你通过HTTP向远程服务器发送GET和POST请求,运行在远程服务器上的程序接收这个请求,翻译出它的内容,返回数据或者一个错误页面到调用它的应用程序。对网络编程有一些研究的朋友会看出我这个设想很象SOAP,但是在这里我不想使用SOAP,因为如果那样的话会使程序变得很复杂。

  想要改变一个完全独立的客户端单机版程序是不太现实的,但即使如此,从一个集中的服务器上下载应用程序设置也比使用本地的INI文件或Windows注册标有更大的独立性和灵活性。举例来说,假设你有一支手机销售队伍,他们需要访问集中化的信息来更有效的销售手机,每天,总公司集中收集数据,然后用电子邮件的形式发送给销售人员。然而,市场的压力和迅速变化的销售形式势必使销售人员要访问最新的数据信息。但是,网络管理员却坚持拒绝让在远程客户端的销售人员访问总公司数据库服务器,因为他们不想通过公用的网络发送用户名和登录密码。因此势必要使用一种新的技术代替基于客户端/服务器的技术,不要着急,我想看完本文你就会解决这个问题的。