By default, HTTP sessions use HTTP/1.1. To use HTTP/1.0, the connection
information property HTTP::EHTTPVersion must be set to HTTP::EHttp10.
From HTTPEXAMPLECLIENT:
switch(cmd)
{
case EVersion10:
SetHttpVersion(HTTP::EHttp10);
break;
case EVersion11:
SetHttpVersion(HTTP::EHttp11);
break;
...
void CHttpClient::SetHttpVersion(HTTP::TStrings aHttpVersion)
{
RHTTPConnectionInfo connInfo = iSess.ConnectionInfo();
RStringPool p=iSess.StringPool();
connInfo.SetPropertyL(p.StringF(HTTP::EHTTPVersion,RHTTPSession::GetTable()),THTTPHdrVal(p.StringF(aHttpVersion)));
}
The version chosen will apply to all new transactions following the property change, but will not affect any transactions currently in progress.
As HTTP/1.1 mandates the use of a persistent connection for requests made in series to a single origin server, the default behaviour of HTTP Client is to set up persistent connections for each transaction. This can be overridden by specifying a Connection header in the client request.