TsgcWebSocketServer_HTTPAPI › Événements › OnHTTPUploadBeforeCreatePostStream
Se déclenche après la lecture des en-têtes de la requête et avant la création du flux POST, afin que le chargement puisse être accepté ou rejeté.
property OnHTTPUploadBeforeCreatePostStream: TsgcWSHTTPBeforeCreatePostStream;
// TsgcWSHTTPBeforeCreatePostStream = procedure(Sender: TObject; const Connection: TsgcWSConnection; const aHeaders: TStrings; var Accept: Boolean) of object
—
OnHTTPUploadBeforeCreatePostStream s'exécute avant que le composant alloue le flux POST (soit un TMemoryStream soit un TFileStream selon HTTPUploadFiles.StreamType) où le corps d'un téléversement entrant sera stocké. Inspectez aHeaders (Content-Type, Content-Length, Authorization...) et la connexion pour décider si le téléversement est autorisé : définissez Accept à True pour continuer à recevoir le corps, ou False pour le rejeter et renvoyer une erreur au client. Utilisez ce crochet pour appliquer des limites de taille, rejeter les téléversements non autorisés tôt, ou valider le Content-Type avant qu'un grand corps multipart/form-data soit mis en mémoire tampon sur le disque.
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;