Compartilhar via


CHttpFile::SendRequestEx

Chamar essa função de membro para enviar uma solicitação para um servidor HTTP.

BOOL SendRequestEx( 
   DWORD dwTotalLen, 
   DWORD dwFlags = HSR_INITIATE, 
   DWORD_PTR dwContext = 1  
); 
BOOL SendRequestEx( 
   LPINTERNET_BUFFERS lpBuffIn, 
   LPINTERNET_BUFFERS lpBuffOut, 
   DWORD dwFlags = HSR_INITIATE, 
   DWORD_PTR dwContext = 1  
);

Parâmetros

  • dwTotalLen
    Número de bytes a ser enviados na solicitação.

  • dwFlags
    Sinalizadores que descrevem a operação. Para obter uma lista de sinalizadores apropriados, consulte HttpSendRequestEx em Windows SDK*.*

  • dwContext
    O identificador de contexto para a operação de CHttpFile . Consulte comentários para obter mais informações sobre este parâmetro.

  • lpBuffIn
    O ponteiro para INTERNET_BUFFERS inicializado que descreve o buffer de entrada usado para a operação.

  • lpBuffOut
    O ponteiro para INTERNET_BUFFERS inicializado que descreve o buffer de saída usou para a operação.

Valor de retorno

Diferente de zero se com êxito. Se a chamada falha, determinar a causa de falha examinando o objeto de CInternetException lançada.

Comentários

Essa função permite que seu aplicativo enviar dados usando gravação e métodos de WriteString de CInternetFile. Você deve saber o comprimento dos dados para enviar antes de chamar tanto a substituição de essa função. A primeira substituição permite que você especifique o comprimento dos dados que você deseja enviar de. A segunda substituição aceita ponteiros para estruturas de INTERNET_BUFFERS , que podem ser utilizados para descrever grande detalhes no buffer.

Depois que o conteúdo é escrito no arquivo, chamada EndRequest para finalizar a operação.

O valor padrão para dwContext é enviado pelo MFC ao objeto de CHttpFile do objeto de CInternetSession que criou o objeto de CHttpFile . Quando você chama CInternetSession::OpenURL ou CHttpConnection para construir um objeto de CHttpFile , você pode substituir a opção para definir o identificador de contexto a um valor de sua escolha. O identificador de contexto é retornado para CInternetSession::OnStatusCallback para fornecer o status do objeto com que é identificado. Consulte o artigo Primeiras etapas da Internet: WinInet para obter mais informações sobre o identificador de contexto.

Exceções

Esse método pode lançar exceções do tipo CInternetException*.

Exemplo

O fragmento de código envia o conteúdo de uma cadeia de caracteres para uma DLL chamado MFCISAPI.DLL no servidor de. HOST LOCAL Quando esse exemplo use apenas uma chamada para WriteString, usar várias chamadas para enviar dados em blocos é aceitável.

CString strData = _T("Some very long data to be POSTed here!");
pServer = session.GetHttpConnection(_T("localhost"));
pFile = pServer->OpenRequest(CHttpConnection::HTTP_VERB_POST, 
   _T("/MFCISAPI/MFCISAPI.dll?"));
pFile->SendRequestEx(strData.GetLength());

pFile->WriteString(strData);   
pFile->EndRequest();

Requisitos

Cabeçalho: afxinet.h

Consulte também

Referência

Classe CHttpFile

Gráfico da hierarquia

Classe CInternetFile

CHttpFile::SendRequest