The HttpChannel class transports messages to and from remote objects using the SOAP protocol. All messages are passed through a SoapFormatter object, where the message is changed into XML and serialized, and the required SOAP headers are added to the stream. The binary formatter can also be specified, which results in a binary data stream. The data stream is then transported to the target Uniform Resource Identifier (URI) using the HTTP protocol. The HttpChannel is compliant with SOAP 1.1 and performs the following functions:
- Provides communication between sender and receiver using the HTTP protocol as a transport.
- Provides encoding of payloads in SOAP, an XML encoding standard.
- Sets the receiver to receive HTTP requests and send HTTP responses in ASP.NET and on a TCP socket.
- Generates and consumes ChannelDataStore for object references.
Note To use the HttpChannel on the client with Microsoft Internet Explorer, you cannot set the automatic configuration of proxy settings in Internet Explorer. Instead, you must explicitly set the proxy settings in Internet Explorer.
The HttpChannel opens only a specified number of connections at one time to a given server. The default is 2. You can use the clientConnectionLimit attribute in an application configuration file to change the default.
If you are building a number of applications that use .NET remoting, it can be easy to mistakenly use an HttpChannel to connect to a server application domain that listens with a TcpChannel object. If you do, the client will receive the following exception: "The underlying connection was closed: An unexpected error occurred on a receive." If you have a client that receives this exception, you should check the client and the server for mismatched channels.