TsgcHTTPServer › Eventos

TsgcHTTPServer Eventos

Eventos que você pode tratar, agrupados por propósito, seguidos pela lista alfabética completa.

Ciclo de Vida

NameDescrição
OnStartupDisparado após o servidor ter iniciado e estar pronto para aceitar conexões.
OnShutdownDispara depois que o servidor parou e nenhuma conexão a mais é aceita.
OnTCPConnectDisparado depois que um cliente conecta no nível TCP e antes de a requisição HTTP ser analisada, para que a conexão possa ser aceita ou rejeitada.
OnConnectDisparado toda vez que uma conexão de cliente é estabelecida.
OnDisconnectDisparado toda vez que uma conexão de cliente é encerrada.
OnErrorDisparado sempre que ocorre um erro em nível de protocolo ao processar uma conexão de cliente.
OnExceptionDisparado sempre que uma exceção não tratada é gerada ao processar uma conexão de cliente.
OnUnknownProtocolDisparado quando os primeiros bytes recebidos não se parecem com uma requisição HTTP válida, para que a conexão possa ser aceita ou rejeitada.
OnUnknownAuthenticationDisparado quando a autenticação está habilitada e o método de autenticação não é reconhecido pelo servidor.

HTTP

NameDescrição
OnBeforeCommandDisparado antes de OnCommandGet ou OnCommandOther, de modo que a requisição possa ser triada, autorizada ou interrompida com uma resposta 401.
OnCommandGetDisparado quando o servidor HTTP recebe uma requisição GET, POST ou HEAD, para que a aplicação possa construir a resposta.
OnCommandOtherDisparado quando o servidor HTTP recebe um método diferente de GET, POST ou HEAD (PUT, DELETE, OPTIONS, PATCH...).
OnBeforeForwardHTTPDispara antes de uma requisição HTTP ser despachada, de modo que ela possa ser encaminhada (reverse-proxy) a outro servidor HTTP.
OnAfterForwardHTTPDisparado após uma requisição HTTP ter sido encaminhada para que a aplicação possa inspecionar o resultado ou um erro retornado pelo servidor upstream.
OnHTTP2BeforeAsyncRequestDispara antes de uma requisição HTTP/2 ser enfileirada para que a aplicação possa escolher se ela é executada no pool de threads ou na thread da conexão.

Sessions

NameDescrição
OnCreateSessionDispara quando o servidor HTTP precisa criar uma nova sessão, para que a aplicação possa fornecer uma instância TIdHTTPSession personalizada.
OnSessionStartDisparado quando uma sessão HTTP é iniciada e adicionada à SessionList.
OnSessionEndDisparado quando uma sessão HTTP é fechada, seja explicitamente ou após SessionTimeout expirar.
OnInvalidSessionDisparado quando uma requisição HTTP apresenta um ID de sessão desconhecido ou expirado, para que a aplicação possa decidir como reagir.

HTTP Upload

NameDescrição
OnHTTPUploadBeforeSaveFileDisparado logo antes de um arquivo extraído de um upload multipart/form-data ser salvo em disco, de modo que o nome e o caminho possam ser personalizados.
OnHTTPUploadAfterSaveFileDisparado depois que um arquivo extraído de um upload multipart/form-data foi salvo em disco.
OnHTTPUploadReadInputDisparado quando o decodificador multipart/form-data lê um campo de entrada que não é arquivo, para que seu valor possa ser capturado.
OnHTTPUploadBeforeCreatePostStreamDisparado depois que os headers da requisição foram lidos e antes de o stream POST ser criado, para que o upload possa ser aceito ou rejeitado.

Confiabilidade

NameDescrição
OnSendBufferFullDisparado quando a fila de saída de uma conexão de cliente atinge seu limite configurado, antes de a política de overflow ser aplicada.

Security

NameDescrição
OnAuthenticationDispara quando a autenticação está habilitada para que a aplicação possa verificar usuário e senha e aceitar ou rejeitar a conexão.
OnSSLGetHandlerDisparado antes de o manipulador SSL ser criado, de modo que uma instância de manipulador personalizado do lado do servidor possa ser fornecida.
OnSSLAfterCreateHandlerDispara depois que o SSL handler foi criado, de modo que suas propriedades possam ser personalizadas.
OnSSLALPNSelectDisparado durante um handshake com ALPN habilitado, para que a aplicação possa escolher qual protocolo negociar.
OnSSLVerifyPeerDispara quando VerifyCertificate está habilitado e o cliente apresenta um certificado a ser aceito ou rejeitado.

Todos os Eventos (alfabético)

NameDescrição
OnAfterForwardHTTPDisparado após uma requisição HTTP ter sido encaminhada para que a aplicação possa inspecionar o resultado ou um erro retornado pelo servidor upstream.
OnAuthenticationDispara quando a autenticação está habilitada para que a aplicação possa verificar usuário e senha e aceitar ou rejeitar a conexão.
OnBeforeCommandDisparado antes de OnCommandGet ou OnCommandOther, de modo que a requisição possa ser triada, autorizada ou interrompida com uma resposta 401.
OnBeforeForwardHTTPDispara antes de uma requisição HTTP ser despachada, de modo que ela possa ser encaminhada (reverse-proxy) a outro servidor HTTP.
OnCommandGetDisparado quando o servidor HTTP recebe uma requisição GET, POST ou HEAD, para que a aplicação possa construir a resposta.
OnCommandOtherDisparado quando o servidor HTTP recebe um método diferente de GET, POST ou HEAD (PUT, DELETE, OPTIONS, PATCH...).
OnConnectDisparado toda vez que uma conexão de cliente é estabelecida.
OnCreateSessionDispara quando o servidor HTTP precisa criar uma nova sessão, para que a aplicação possa fornecer uma instância TIdHTTPSession personalizada.
OnDisconnectDisparado toda vez que uma conexão de cliente é encerrada.
OnErrorDisparado sempre que ocorre um erro em nível de protocolo ao processar uma conexão de cliente.
OnExceptionDisparado sempre que uma exceção não tratada é gerada ao processar uma conexão de cliente.
OnHTTP2BeforeAsyncRequestDispara antes de uma requisição HTTP/2 ser enfileirada para que a aplicação possa escolher se ela é executada no pool de threads ou na thread da conexão.
OnHTTPUploadAfterSaveFileDisparado depois que um arquivo extraído de um upload multipart/form-data foi salvo em disco.
OnHTTPUploadBeforeCreatePostStreamDisparado depois que os headers da requisição foram lidos e antes de o stream POST ser criado, para que o upload possa ser aceito ou rejeitado.
OnHTTPUploadBeforeSaveFileDisparado logo antes de um arquivo extraído de um upload multipart/form-data ser salvo em disco, de modo que o nome e o caminho possam ser personalizados.
OnHTTPUploadReadInputDisparado quando o decodificador multipart/form-data lê um campo de entrada que não é arquivo, para que seu valor possa ser capturado.
OnInvalidSessionDisparado quando uma requisição HTTP apresenta um ID de sessão desconhecido ou expirado, para que a aplicação possa decidir como reagir.
OnSendBufferFullDisparado quando a fila de saída de uma conexão de cliente atinge seu limite configurado, antes de a política de overflow ser aplicada.
OnSessionEndDisparado quando uma sessão HTTP é fechada, seja explicitamente ou após SessionTimeout expirar.
OnSessionStartDisparado quando uma sessão HTTP é iniciada e adicionada à SessionList.
OnShutdownDispara depois que o servidor parou e nenhuma conexão a mais é aceita.
OnSSLAfterCreateHandlerDispara depois que o SSL handler foi criado, de modo que suas propriedades possam ser personalizadas.
OnSSLALPNSelectDisparado durante um handshake com ALPN habilitado, para que a aplicação possa escolher qual protocolo negociar.
OnSSLGetHandlerDisparado antes de o manipulador SSL ser criado, de modo que uma instância de manipulador personalizado do lado do servidor possa ser fornecida.
OnSSLVerifyPeerDispara quando VerifyCertificate está habilitado e o cliente apresenta um certificado a ser aceito ou rejeitado.
OnStartupDisparado após o servidor ter iniciado e estar pronto para aceitar conexões.
OnTCPConnectDisparado depois que um cliente conecta no nível TCP e antes de a requisição HTTP ser analisada, para que a conexão possa ser aceita ou rejeitada.
OnUnknownAuthenticationDisparado quando a autenticação está habilitada e o método de autenticação não é reconhecido pelo servidor.
OnUnknownProtocolDisparado quando os primeiros bytes recebidos não se parecem com uma requisição HTTP válida, para que a conexão possa ser aceita ou rejeitada.