Función HttpOpenRequestA (wininet.h)
Crea un identificador de solicitud HTTP.
Sintaxis
HINTERNET HttpOpenRequestA(
[in] HINTERNET hConnect,
[in] LPCSTR lpszVerb,
[in] LPCSTR lpszObjectName,
[in] LPCSTR lpszVersion,
[in] LPCSTR lpszReferrer,
[in] LPCSTR *lplpszAcceptTypes,
[in] DWORD dwFlags,
[in] DWORD_PTR dwContext
);
Parámetros
[in] hConnect
Identificador de una sesión HTTP devuelta por InternetConnect.
[in] lpszVerb
Puntero a un cadena terminadanull que contiene el verbo HTTP que se va a usar en la solicitud. Si este parámetro es NULL, la función usa GET como verbo HTTP.
[in] lpszObjectName
Puntero a un cadena terminada en nullque contiene el nombre del objeto de destino del verbo HTTP especificado. Por lo general, se trata de un nombre de archivo, un módulo ejecutable o un especificador de búsqueda.
[in] lpszVersion
Puntero a un cadena terminadanull que contiene la versión HTTP que se va a usar en la solicitud. La configuración de Internet Explorer invalidará el valor especificado en este parámetro.
Si este parámetro es NULL, la función usa una versión HTTP de 1.1 o 1.0, en función del valor de la configuración de Internet Explorer.
Valor | Significado |
---|---|
|
HTTP versión 1.0 |
|
Http, versión 1.1 |
[in] lpszReferrer
Puntero a un cadena terminada en nullque especifica la dirección URL del documento desde el que se obtuvo la dirección URL de la solicitud (lpszObjectName). Si este parámetro es NULL, no se especifica ningún remitente.
[in] lplpszAcceptTypes
Puntero a un matriz terminadanull de cadenas que indica los tipos de medios aceptados por el cliente. Este es un ejemplo.
PCTSTR rgpszAcceptTypes[] = {_T("text/*"), NULL};
Si no finaliza correctamente la matriz con un puntero NULL, se producirá un bloqueo.
Si este parámetro es null, el cliente no acepta ningún tipo. Por lo general, los servidores interpretan la falta de tipos de aceptación para indicar que el cliente solo acepta documentos de tipo "text/*" (es decir, solo documentos de texto, no hay imágenes u otros archivos binarios).
[in] dwFlags
Opciones de Internet. Este parámetro puede ser cualquiera de los siguientes valores.
Valor | Significado |
---|---|
|
Devuelve el recurso de la memoria caché si se produce un error en la solicitud de red del recurso debido a un ERROR_INTERNET_CONNECTION_RESET (se ha restablecido la conexión con el servidor) o ERROR_INTERNET_CANNOT_CONNECT (error al intentar conectarse al servidor). |
|
Fuerza una recarga si no había ninguna hora de expiración y no se devolvió la hora lastModified del servidor al determinar si se debe volver a cargar el elemento de la red. |
|
Deshabilita la comprobación de certificados basados en SSL/PCT que se devuelven del servidor con el nombre de host proporcionado en la solicitud. Las funciones winINet usan una comprobación sencilla de los certificados comparando los nombres de host coincidentes y las reglas de caracteres comodín simples. |
|
Deshabilita la comprobación de certificados basados en SSL/PCT para fechas de validez adecuadas. |
|
Deshabilita la detección de este tipo especial de redirección. Cuando se usa esta marca, las funciones winINet permiten de forma transparente las redirecciones de HTTPS a direcciones URL HTTP. |
|
Deshabilita la detección de este tipo especial de redirección. Cuando se usa esta marca, las funciones winINet permiten de forma transparente las redirecciones de HTTP a direcciones URL HTTPS. |
|
Usa la semántica de mantenimiento activo, si está disponible, para la conexión. Esta marca es necesaria para Microsoft Network (MSN), NT LAN Manager (NTLM) y otros tipos de autenticación. |
|
Hace que se cree un archivo temporal si el archivo no se puede almacenar en caché. |
|
No intenta la autenticación automáticamente. |
|
No controla automáticamente el redireccionamiento en httpSendRequest. |
|
No agrega la entidad devuelta a la memoria caché. |
|
No agrega automáticamente encabezados de cookies a las solicitudes y no agrega automáticamente cookies devueltas a la base de datos de cookies. |
|
Deshabilita el cuadro de diálogo cookie. |
|
Obliga a que el servidor de origen resuelva la solicitud, incluso si existe una copia almacenada en caché en el proxy. |
|
Fuerza una descarga del archivo, el objeto o la lista de directorios solicitados desde el servidor de origen, no desde la memoria caché. |
|
Recarga los recursos HTTP si el recurso se ha modificado desde la última vez que se descargó. Todos los recursos FTP se vuelven a cargar.
Windows XP y Windows Server 2003 R2 y versiones anteriores: también se vuelven a cargar recursos de Gopher. |
|
Usa la semántica de transacciones seguras. Esto se traduce en el uso de la capa de sockets seguros/tecnología de comunicaciones privadas (SSL/PCT) y solo es significativo en las solicitudes HTTP. |
[in] dwContext
Puntero a una variable que contiene el valor definido por la aplicación que asocia esta operación a los datos de la aplicación.
Valor devuelto
Devuelve un identificador de solicitud HTTP si se ejecuta correctamente o null de lo contrario. Para recuperar información de error extendida, llame a GetLastError.
Observaciones
La función httpOpenRequest crea un nuevo identificador de solicitud HTTP y almacena los parámetros especificados en ese identificador. Un identificador de solicitud HTTP contiene una solicitud que se enviará a un servidor HTTP y contiene todos los encabezados RFC822/MIME/HTTP que se enviarán como parte de la solicitud.
Si se especifica un verbo distinto de "GET" o "POST", httpOpenRequest establece automáticamente INTERNET_FLAG_NO_CACHE_WRITE y INTERNET_FLAG_RELOAD para la solicitud.
Con Microsoft Internet Explorer 5 y versiones posteriores, si lpszVerb está establecido en "HEAD", el encabezado Content-Length se omite en las respuestas de servidores HTTP/1.1.
En Windows 7, Windows Server 2008 R2 y versiones posteriores, la configuración de Internet Explorer invalida el parámetro lpszVersion. El EnableHttp1_1 es un valor del Registro en HKLM\Software\Microsoft\InternetExplorer\AdvacnedOptions\HTTP\GENABLE controlados por Opciones de Internet establecidas en Internet Explorer para el sistema. El valor de EnableHttp1_1 tiene como valor predeterminado 1. La función HttpOpenRequest actualiza cualquier versión HTTP inferior a 1.1 a HTTP versión 1.1 si EnableHttp1_1 está establecida en 1.
Después de que la aplicación de llamada haya terminado de usar el identificador HINTERNET de
Nota Cuando se envía una solicitud en modo asincrónico (el parámetro dwFlags de InternetOpen especifica INTERNET_FLAG_ASYNC), y el parámetro dwContext es cero (INTERNET_NO_CALLBACK), la función de devolución de llamada establecida con InternetSetStatusCallback en el identificador de solicitud no se invocará, sin embargo, La llamada se seguirá realizando en modo asincrónico.
Al igual que todos los demás aspectos de la API de WinINet, esta función no se puede llamar de forma segura desde DllMain ni desde los constructores y destructores de objetos globales.
Nota
El encabezado wininet.h define HttpOpenRequest como alias que selecciona automáticamente la versión ANSI o Unicode de esta función en función de la definición de la constante de preprocesador UNICODE. La combinación del uso del alias neutral de codificación con código que no es neutral de codificación puede dar lugar a errores de coincidencia que dan lugar a errores de compilación o tiempo de ejecución. Para obtener más información, vea Conventions for Function Prototypes.
Requisitos
Requisito | Valor |
---|---|
cliente mínimo admitido | Windows 2000 Professional [solo aplicaciones de escritorio] |
servidor mínimo admitido | Windows 2000 Server [solo aplicaciones de escritorio] |
de la plataforma de destino de |
Windows |
encabezado de |
wininet.h |
biblioteca de |
Wininet.lib |
DLL de |
Wininet.dll |