使用正确版本的XMLHTTP

 说起XMLHTTP,相信你一定不会陌生,当前大红大紫的AJAX技术的核心所在。我在这里不讨论AJAX,也不讨论JavaScript,而是讨论VBScript。

 
我枚举了一下,在我的系统(Windows7)中,以下ProgID都可以创建XMLHTTP对象:
 
Microsoft.XMLHTTP
Microsoft.XMLHTTP.1.0
Msxml2.ServerXMLHTTP
Msxml2.ServerXMLHTTP.3.0
Msxml2.ServerXMLHTTP.4.0
Msxml2.ServerXMLHTTP.5.0
Msxml2.ServerXMLHTTP.6.0
Msxml2.XMLHTTP
Msxml2.XMLHTTP.3.0
Msxml2.XMLHTTP.4.0
Msxml2.XMLHTTP.5.0
Msxml2.XMLHTTP.6.0
 
不同的版本有什么区别呢?Google告诉你答案:
 
 
Using the right version of MSXML in Internet Explorer
 
这是MSDN博客上的一篇文章,太长了我就不翻译了。大概是说,如果系统安装了(Vista以上自带),最好使用MSXML 6.0;如果系统上没有6.0,则应该使用MSXML 3.0(Win2k以上自带);不推荐使用的4.0、5.0版本。还有就是Microsoft.XMLHTTP已经很老了,也不推荐使用。
 
有关ServerXMLHTTP 的常见问题
 
微软帮助和支持上的一篇文章,简单的摘录一下:
 
XMLHTTP 和ServerXMLHTTP之间的区别是什么?
 
XMLHTTP为客户端应用程序而设计,并依赖于基于Microsoft Win32 Internet (WinInet) 而构建的URLMon。ServerXMLHTTP为服务器应用程序而设计,并依赖于新的HTTP客户端堆栈WinHTTP。ServerXMLHTTP提供了可靠性和安全性,并且是服务器安全的。有关更多信息,请参见MSXML 软件开发工具包(SDK)文档。
 
如何在XMLHTTP 和ServerXMLHTTP 之间做出选择?
 
正如其名称所示,ServerXMLHTTP推荐用于服务器应用程序,而XMLHTTP推荐用于客户端应用程序。XMLHTTP具有一些优点,如支持缓存和自动发现代理。它可以在Windows 95和Windows 98平台上使用,并且非常适合单用户桌面应用程序。
 
 
 
总结一下,在大部分情况下,这样创建XMLHTP就可以了:
 
Set http = CreateObject("Msxml2.XMLHTTP")
Msxml2.XMLHTTP会自动映射到Msxml2.XMLHTTP.3.0。
 
ServerXMLHTTP提供了比XMLHTTP更加强大的功能

评论

发表新评论

此内容将保密,不会被其他人看见。
点击刷新验证码
  • 可用的 UBB 标签:
  • 留言最长字数:1000。