Novidades no Windows Server 2008 e no Windows Vista

A partir do Windows Server 2008 e do Windows Vista, a API WinHTTP foi aprimorada para incluir os recursos a seguir.

Maior que 4 GB de carregamento.

WinHttpSendRequest pode enviar apenas 4 GB de dados devido a limitações no tamanho do parâmetro de comprimento total DWORD. Para permitir que os aplicativos enviem mais de 4 GB de dados, o cabeçalho Content-Length é adicionado à solicitação especificando dados tão grandes quanto um LARGE_INTEGER (2^64 bytes). Para obter mais informações, consulte WinHttpSendRequest. Não há suporte para esse recurso no objeto COM IWinHttpRequest .

Cabeçalho Transfer-Encoding

O cabeçalho Transfer-Encoding permite que os aplicativos enviem dados em partes para o servidor. Quando o cabeçalho Transfer-Encoding está presente na solicitação, o aplicativo envia a solicitação com um corpo de entidade de comprimento zero na chamada para WinHttpSendRequest. O corpo da entidade é enviado em chamadas subsequentes para WinHttpWriteData. Não há suporte para esse recurso no objeto COM IWinHttpRequest .

Recuperação da lista de emissores de certificados do cliente SSL

O aplicativo pode recuperar a lista de emissores de certificado do cliente SSL quando WinHttpSendRequest falha com um ERROR_WINHTTP_CLIENT_AUTH_CERT_NEEDED. Uma nova opção, WINHTTP_OPTION_CLIENT_CERT_ISSUER_LIST, permite que os aplicativos recuperem a lista de emissores de certificados e filtrem a lista para o certificado ideal. Para obter mais informações, consulte os tópicos Sinalizadores de opção e Recuperação de lista de emissores para autenticação de cliente SSL . Não há suporte para esse recurso no objeto COM IWinHttpRequest .

Certificados de cliente opcionais

Quando WinHttpSendRequest falha com um ERROR_WINHTTP_CLIENT_AUTH_CERT_NEEDED, o servidor pode não exigir o certificado do cliente SSL. O servidor pode ser capaz de reverter a outra forma de autenticação ou permitir que o cliente prossiga com acesso anônimo. O aplicativo define a opção WINHTTP_OPTION_CLIENT_CERT_CONTEXT e especifica uma macro que o WinHttp usa para determinar se o certificado do cliente é necessário. Para obter mais informações, consulte Sinalizadores de opção. Não há suporte para esse recurso no objeto COM IWinHttpRequest .

Endereços IP de origem e destino

Quando WinHttpReceiveResponse for concluído, o aplicativo poderá recuperar o endereço IP de origem e destino e a porta da solicitação que gerou a resposta. Uma nova estrutura é fornecida para receber os endereços de origem e destino quando a opção WINHTTP_OPTION_CONNECTION_INFO é definida. Para obter mais informações, consulte Sinalizadores de opção. Não há suporte para esse recurso no objeto COM IWinHttpRequest .

Erros adicionais de autenticação de cliente SSL

Erros adicionais de autenticação de cliente SSL fornecem mais informações sobre o certificado do Cliente SSL. ERROR_WINHTTP_CLIENT_CERT_NO_PRIVATE_KEY e ERROR_WINHTTP_CERT_NO_ACCESS_PRIVATE_KEY erros de certificado do cliente são novos para Windows Server 2008 e Windows Vista. O objeto COM IWinHttpRequest retorna esses erros em um HRESULT.