Novedades de Windows Server 2008 y Windows Vista
A partir de Windows Server 2008 y Windows Vista, se ha mejorado la API winHTTP para incluir las siguientes características.
Mayor que 4 GB de carga.
WinHttpSendRequest solo puede enviar 4 GB de datos debido a limitaciones en el tamaño del parámetro de longitud total DWORD. Para permitir que las aplicaciones envíen más de 4 GB de datos, el encabezado Content-Length se agrega a la solicitud que especifica datos tan grandes como un LARGE_INTEGER (2^64 bytes). Para obtener más información, vea WinHttpSendRequest. Esta característica no se admite en el objeto COM IWinHttpRequest .
encabezado de Transfer-Encoding
El encabezado Transfer-Encoding permite a las aplicaciones enviar datos fragmentados al servidor. Cuando el encabezado Transfer-Encoding está presente en la solicitud, la aplicación envía la solicitud con un cuerpo de entidad de longitud cero en la llamada a WinHttpSendRequest. El cuerpo de la entidad se envía en llamadas posteriores a WinHttpWriteData. Esta característica no se admite en el objeto COM IWinHttpRequest .
Recuperación de la lista de emisores de certificados de cliente SSL
La aplicación puede recuperar la lista de emisores de certificados de cliente SSL cuando WinHttpSendRequest produce un error con un ERROR_WINHTTP_CLIENT_AUTH_CERT_NEEDED. Una nueva opción, WINHTTP_OPTION_CLIENT_CERT_ISSUER_LIST, permite a las aplicaciones recuperar la lista de emisores de certificados y filtrar la lista para obtener el certificado óptimo. Para obtener más información, consulte los temas Option flags (Marcas de opción ) y Issuer List Retrieval for SSL Client Authentication (Recuperación de listas de emisores para la autenticación de cliente SSL ). Esta característica no se admite en el objeto COM IWinHttpRequest .
Certificados de cliente opcionales
Cuando Se produce un error en WinHttpSendRequest con un ERROR_WINHTTP_CLIENT_AUTH_CERT_NEEDED, es posible que el servidor no requiera el certificado de cliente SSL. Es posible que el servidor pueda revertir a otra forma de autenticación o permitir que el cliente continúe con el acceso anónimo. La aplicación establece la opción WINHTTP_OPTION_CLIENT_CERT_CONTEXT y especifica una macro que WinHttp usa para determinar si se requiere el certificado de cliente. Para obtener más información, vea Marcas de opción. Esta característica no se admite en el objeto COM IWinHttpRequest .
Direcciones IP de origen y destino
Cuando se completa WinHttpReceiveResponse , la aplicación puede recuperar la dirección IP de origen y destino y el puerto de la solicitud que generó la respuesta. Se proporciona una nueva estructura para recibir las direcciones de origen y destino cuando se establece la opción WINHTTP_OPTION_CONNECTION_INFO . Para obtener más información, vea Marcas de opción. Esta característica no se admite en el objeto COM IWinHttpRequest .
Errores adicionales de autenticación de cliente SSL
Los errores de autenticación de cliente SSL adicionales proporcionan más información sobre el certificado de cliente SSL. ERROR_WINHTTP_CLIENT_CERT_NO_PRIVATE_KEY y ERROR_WINHTTP_CERT_NO_ACCESS_PRIVATE_KEY errores de certificado de cliente son nuevos para Windows Server 2008 y Windows Vista. El objeto COM IWinHttpRequest devuelve estos errores en un HRESULT.