TsgcWebSocketHTTPServerEventos › OnHTTPUploadBeforeCreatePostStream

OnHTTPUploadBeforeCreatePostStream Event

Disparado 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.

Sintaxe

property OnHTTPUploadBeforeCreatePostStream: TsgcWSHTTPBeforeCreatePostStream;
// TsgcWSHTTPBeforeCreatePostStream = procedure(Sender: TObject; const Connection: TsgcWSConnection; const aHeaders: TStrings; var Accept: Boolean) of object

Valor Padrão

Observações

OnHTTPUploadBeforeCreatePostStream é executado antes de o componente alocar o POST stream (um TMemoryStream ou um TFileStream, conforme HTTPUploadFiles.StreamType) onde o corpo de um upload de entrada será armazenado. Inspecione aHeaders (Content-Type, Content-Length, Authorization...) e a Connection para decidir se o upload é permitido: defina Accept como True para continuar recebendo o corpo, ou False para descartá-lo e retornar um erro ao cliente. Utilize este hook para impor limites de tamanho, rejeitar uploads não autorizados cedo ou validar o Content-Type antes que um grande corpo multipart/form-data seja armazenado em buffer no disco.

Exemplo


procedure OnHTTPUploadBeforeCreatePostStream(Sender: TObject; const Connection: TsgcWSConnection;
  const aHeaders: TStrings; var Accept: Boolean);
begin
  Accept := StrToIntDef(aHeaders.Values['Content-Length'], 0) <= 100 * 1024 * 1024;
end;

Voltar para Eventos