Provides methods and properties that enable you to establish an HTTP connection between files or objects on different Web servers.
ServerXMLHTTP object offers functionality similar to that of the
XMLHTTP object. Unlike
XMLHTTP, however, the
ServerXMLHTTP object does not rely on the WinInet control for HTTP access to remote XML documents.
ServerXMLHTTP uses a new HTTP client stack. Designed for server applications, this server-safe subset of WinInet offers the following advantages:
Reliability — The HTTP client stack offers longer uptimes. WinInet features that are not critical for server applications, such as URL caching, auto-discovery of proxy servers, HTTP/1.1 chunking, offline support, and support for Gopher and FTP protocols are not included in the new HTTP subset.
Security — The HTTP client stack does not allow a user-specific state to be shared with another user's session.
ServerXMLHTTPprovides support for client certificates.
ServerXMLHTTP object is commonly used to:
Receive XML documents from an Active Server Pages (ASP) page on a local or remote Web server (HTTP
Post XML documents to an ASP page on a local or remote Web server (HTTP
Post and process response XML documents from an ASP page (HTTP
You can use the
ServerXMLHTTP object either indirectly using the
setProperty method of
DOMDocument or directly using the
ServerXMLHTTP object itself. For examples of these two approaches, as well as examples of how to use the
ServerXMLHTTP security options and how to use
ServerXMLHTTP in a multitiered environment, see IServerXMLHTTPRequest/ServerXMLHTTP Examples.
ServerXMLHTTP in C/C++, the usual sequence is to call the
open method, set any custom header information through the
setRequestHeader method, call the
send method, and then check one of the four response properties.
For example, an ASP, Microsoft® Visual Basic®, or C++ component on a server computer can send an HTTP request to another server and then receive the response as a stream or XML document object. The response can then be fed to downstream clients, saved to a file on the server, or combined with other XML data (potentially collected from other Web servers).
ServerXMLHTTP offers additional benefits for transporting XML data:
ServerXMLHTTPmaintains state, so transactional XML data can be used in business applications that require real-time responses.
ServerXMLHTTPallows you to serve the response object as a stream or Document Object Model (DOM) object. As a stream, this offers considerable performance benefits when moving data through the HTTP protocol.
ServerXMLHTTP offers some backward compatibility with
XMLHTTP. Source code (JScript, Visual Basic Scripting Edition, Visual Basic, or C++) that uses the XMLHTTP component can be easily modified to use the new
The number of instances of
ServerXMLHTTP that can exist simultaneously within a single process primarily depends upon the amount of memory available for applications on the system. However, other factors, such as CPU processing capacity, or available socket connections can further limit the number of instances that can be active simultaneously.
Implemented in: MSXML 3.0 and later
msxml3.dll, msxml2.lib (MSXML 3.0)
msxml6.dll, msxml6.lib (MSXML 6.0)
Header and IDL files (C/C++): msxml2.h, msxml2.idl, msxml6.h, msxml6.idl
For version-specific GUID and ProgID information, see GUIDs and ProgID Information.