Главная страницаОбратная связьКарта сайта

Как отправить бинарные данные из CGI приложения

Не для кого не секрет, как просто можно получать данные различного типа из CGI приложения. Однако, иногда необходимо, чтобы данные сохранялись в виде файла с определённым именем, типа "Test.ZIP". Для этого необходимо добавить в заголовок HTTP пункт "Content-Disposition".

В Delphi для этого используется свойство CustomHeaders. В это TStrings свойство можно добавлять пункты в виде "name=value" - так как HTTP синтакс name:value здесь не используется.


procedure TWebModule1.WebModule1CHECKSTATUSAction(Sender: TObject;
Request: TWebRequest; Response: TWebResponse; var Handled: Boolean);
var
  s: TFileStream;
begin
  s := nil;
  if request.query="download" then
    try
      response.Title := "Download Test.ZIP";
      response.CustomHeaders.Add ("Content-Disposition=filename=Test.zip");
      response.ContentType := "application/zip";
      s := TFileStream.Create (fmOpenRead+fmShareDenyNone,"Test.zip");
      response.contentstream := s;
      response.sendresponse;
    finally
      s.Free;
    end;
end;


Обсудить статью на форуме


Если Вас заинтересовала или понравилась информация по разработке на Delph - "Как отправить бинарные данные из CGI приложения", Вы можете поставить закладку в социальной сети или в своём блоге на данную страницу:

Так же Вы можете задать вопрос по работе этого модуля или примера через форму обратной связи, в сообщение обязательно указывайте название или ссылку на статью!
   


Copyright © 2008 - 2019 Дискета.info