TsgcHTTPServer › Olaylar › OnHTTPUploadBeforeSaveFile
Bir multipart/form-data yüklemesinden çıkarılan bir dosya diske kaydedilmeden önce tetiklenir, böylece ad ve yol özelleştirilebilir.
property OnHTTPUploadBeforeSaveFile: TsgcWSHTTPUploadBeforeSaveFileEvent;
// TsgcWSHTTPUploadBeforeSaveFileEvent = procedure(Sender: TObject; var aFileName, aFilePath: string) of object
—
HTTPUploadFiles.StreamType pstFileStream olduğunda ve HTTPUploadFiles.RemoveBoundaries True olduğunda, sunucu alınan multipart/form-data sınırlarından her dosyayı çıkarır ve otomatik olarak diske kaydeder. OnHTTPUploadBeforeSaveFile, her dosya için tam olarak yazılmadan önce tetiklenir ve uygulamaya hedefi geçersiz kılma şansı verir: farklı bir hedef seçmek için aFileName'i (varsayılan olarak orijinal istemci dosya adı) veya aFilePath'i (varsayılan olarak HTTPUploadFiles.SaveDirectory) değiştirin. Güvenilmeyen adları temizlemek, yüklemeleri kullanıcı başına klasörlere yönlendirmek veya çakışmaları önlemek için bir zaman damgası eklemek için kullanın.
procedure OnHTTPUploadBeforeSaveFileEvent(Sender: TObject; var aFileName: string;
var aFilePath: string);
begin
if aFileName = 'test.jpg' then
aFileName := 'custom_test.jpg';
end;