Compartilhar via


Função HttpQueryInfoA (wininet.h)

Recupera informações de cabeçalho associadas a uma solicitação HTTP.

Sintaxe

BOOL HttpQueryInfoA(
  [in]      HINTERNET hRequest,
  [in]      DWORD     dwInfoLevel,
  [in, out] LPVOID    lpBuffer,
  [in, out] LPDWORD   lpdwBufferLength,
  [in, out] LPDWORD   lpdwIndex
);

Parâmetros

[in] hRequest

Um identificador retornado por uma chamada para a HttpOpenRequest ou função InternetOpenUrl.

[in] dwInfoLevel

Uma combinação de um atributo a ser recuperado e sinalizadores que modificam a solicitação. Para obter uma lista de possíveis valores de atributo e modificador, consulte Sinalizadores de Informações de Consulta.

[in, out] lpBuffer

Um ponteiro para um buffer para receber as informações solicitadas. Esse parâmetro não deve ser NULL.

[in, out] lpdwBufferLength

Um ponteiro para uma variável que contém, na entrada, o tamanho em bytes do buffer apontado por lpvBuffer.

Quando a função retorna com êxito, essa variável contém o número de bytes de informações gravadas no buffer. No caso de uma cadeia de caracteres, a contagem de bytes não inclui a terminação da cadeia de caracteres caractere nulo.

Quando a função
falha com um código de erro estendido de ERROR_INSUFFICIENT_BUFFER, a variável apontada por lpdwBufferLength contém ao sair do tamanho, em bytes, de um buffer grande o suficiente para receber as informações solicitadas. O aplicativo de chamada pode alocar um buffer desse tamanho ou maior e chamar a função novamente.

[in, out] lpdwIndex

Um ponteiro para um índice de cabeçalho baseado em zero usado para enumerar vários cabeçalhos com o mesmo nome. Ao chamar a função, esse parâmetro é o índice do cabeçalho especificado a ser retornado. Quando a função retorna, esse parâmetro é o índice do próximo cabeçalho. Se o próximo índice não puder ser encontrado, ERROR_HTTP_HEADER_NOT_FOUND será retornado.

Valor de retorno

Retorna TRUE se tiver êxito ou false caso contrário. Para obter informações de erro estendidas, chame GetLastError.

Observações

Você pode recuperar os seguintes tipos de dados de httpQueryInfo:

  • Cadeias de caracteres (padrão)
  • SYSTEMTIME (para datas)
  • DWORD (para STATUS_CODE, CONTENT_LENGTHe assim por diante, se HTTP_QUERY_FLAG_NUMBER tiver sido usado)

Se o aplicativo exigir que os dados sejam retornados como um tipo de dados diferente de uma cadeia de caracteres, você deverá incluir o modificador apropriado com o atributo passado para dwInfoLevel.

A função HttpQueryInfo está disponível no Microsoft Internet Explorer 3.0 para caracteres ISO-8859-1 (funçãoHttpQueryInfoA) e no Internet Explorer 4.0 ou posterior para caracteres ISO-8859-1 (função HttpQueryInfoA) e para caracteres ISO-8859-1 convertidos em caracteres UTF-16LE. (a função httpQueryInfoW ).

Observação a função HttpQueryInfoA representa cabeçalhos como caracteres ISO-8859-1 e não caracteres ANSI. A função httpQueryInfoW representa cabeçalhos como caracteres ISO-8859-1 convertidos em caracteres UTF-16LE. Como resultado, nunca é seguro usar a função HttpQueryInfoW quando os cabeçalhos podem conter caracteres não ASCII. Em vez disso, um aplicativo pode usar as funções MultiByteToWideChar e WideCharToMultiByte com um parâmetro Codepage definido como 28591 para mapear entre caracteres ANSI e caracteres UTF-16LE.
 
Consulte Recuperando cabeçalhos HTTP para obter um código de exemplo chamando a função httpQueryInfo.

Assim como todos os outros aspectos da API WinINet, essa função não pode ser chamada com segurança de dentro do DllMain ou dos construtores e destruidores de objetos globais.

Observação WinINet não dá suporte a implementações de servidor. Além disso, ele não deve ser usado de um serviço. Para implementações ou serviços de servidor, use do Microsoft Windows HTTP Services (WinHTTP).
 

Nota

O cabeçalho wininet.h define HttpQueryInfo como um alias que seleciona automaticamente a versão ANSI ou Unicode dessa função com base na definição da constante do pré-processador UNICODE. A combinação do uso do alias neutro de codificação com código que não é neutro em codificação pode levar a incompatibilidades que resultam em erros de compilação ou de runtime. Para obter mais informações, consulte Conventions for Function Prototypes.

Requisitos

Requisito Valor
de cliente com suporte mínimo Windows 2000 Professional [somente aplicativos da área de trabalho]
servidor com suporte mínimo Windows 2000 Server [somente aplicativos da área de trabalho]
da Plataforma de Destino Windows
cabeçalho wininet.h
biblioteca Wininet.lib
de DLL Wininet.dll

Consulte também

sessões HTTP

recuperando cabeçalhos HTTP

do WinINet Functions