TsgcWebSocketHTTPServerEreignisse › OnHTTPUploadBeforeCreatePostStream

OnHTTPUploadBeforeCreatePostStream Ereignis

Wird ausgelöst, nachdem die Anfrage-Header gelesen wurden und bevor der POST-Stream erstellt wird, sodass der Upload angenommen oder abgelehnt werden kann.

Syntax

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

Standardwert

Hinweise

OnHTTPUploadBeforeCreatePostStream wird ausgeführt, bevor die Komponente den POST-Stream (entweder ein TMemoryStream oder ein TFileStream, basierend auf HTTPUploadFiles.StreamType) zuweist, in dem der Body eines eingehenden Uploads gespeichert wird. Inspizieren Sie aHeaders (Content-Type, Content-Length, Authorization...) und die Connection, um zu entscheiden, ob der Upload zulässig ist: setzen Sie Accept auf True, um den Body weiter zu empfangen, oder auf False, um ihn zu verwerfen und dem Client einen Fehler zurückzugeben. Verwenden Sie diesen Hook, um Größenbeschränkungen durchzusetzen, nicht autorisierte Uploads frühzeitig abzulehnen oder den Content-Type zu validieren, bevor ein großer multipart/form-data-Body auf der Festplatte gepuffert wird.

Beispiel


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;

Zurück zu Ereignissen