Processamento de Pedidos

O processamento de solicitações inclui quatro etapas:

  • Receber um pedido
  • Tratamento do pedido
  • Envio da resposta
  • Cancelar pedidos que não podem ser processados

Diagrama que mostra o loop de solicitação do processo.

Receber um Pedido

A API do Servidor HTTP fornece uma estrutura de solicitação para armazenar a solicitação de entrada analisada. Essa estrutura é alocada pelo aplicativo e inicializada quando uma solicitação de entrada é recebida. O aplicativo chama a função HttpReceiveHttpRequest para receber a solicitação. Se o buffer de solicitação for muito pequeno para receber a solicitação, o aplicativo poderá aumentar o tamanho do buffer e chamar HttpReceiveHttpRequest novamente para receber a solicitação inteira.

Se o pedido incluir dados do corpo da entidade a serem recebidos, as aplicações chamarão HttpReceiveRequestEntityBody com o identificador da solicitação retornado no parâmetro pRequestBuffer durante a chamada para HttpReceiveHttpRequest.

Tratamento do pedido

O aplicativo executa o processamento específico do aplicativo da solicitação e formula uma resposta. A API do servidor HTTP não impõe nenhum tempo limite neste processo.

Enviar a resposta

Quando o aplicativo termina de lidar com a solicitação e formular a resposta, ele chama a função HttpSendHttpResponse para enviar a resposta. Se a resposta incluir dados do corpo da entidade para enviar, o aplicativo também chamará HttpSendResponseEntityBody.

Cancelamento de Pedidos

Depois de o aplicativo ter recebido uma ID de pedido da sua chamada para HttpReceiveHttpRequest, pode cancelar o pedido a qualquer momento chamando HttpCancelHttpRequest.