Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2005.09.11;
Скачать: CL | DM;

Вниз

Upload файлов на сервер посредством CGI   Найти похожие ветки 

 
Алексей_К   (2005-05-24 06:56) [0]

Необходимо передать файл на сервер, принимает файл CGI-скрипт.

Попробывал следующее решение: В TWebRequest есть свойство Files,  когда обращаюсь к этому свойству, возникают ошибки типа "Access violation at address ...".
В хелпе написано "The TAbstractRequestFiles object contains uploaded files extracted from the HTTP request.", но как этим правильно пользоваться?

Код:
...
 const
   c="http://127.0.0.1/cgi-bin/up.exe";
...
procedure TWebModule1.WebModule1WebActionItem1Action(Sender: TObject;
 Request: TWebRequest; Response: TWebResponse; var Handled: Boolean);
var page:TSTringlist;
   f:TFileStream;    
begin
page:=TSTringlist.Create;
page.Add("<html>");
if Request.MethodType=mtGET then
       begin
       page.Add("<head><title>Form upload.</title></head><body>");
       page.Add("<form action=""+c+"" method="POST">");
       page.Add("<input type="file" name="fn" value="files">");
       page.Add("<input type="submit" name="go" value="upload...">");
       page.Add("</form>");
       end;
if request.MethodType=mtPOST then
       begin
       f:=TFileStream.Create("file",fmCreate);
       f.CopyFrom(Request.Files.Items[0].Stream,Request.Files.Items[0].Stream.Size);
       f.Free;
       page.Add("<head><title>Form 2.</title></head><body>");
       page.Add("Files count: "+inttostr(Request.Files.Count));
       page.Add("
<a href=""+c+"">back</a>");
       page.Add("
Content:
<hr>"+request.Content+"<hr>");
       end;
page.Add("</body></html>");
Response.Content:=page.Text;
page.Free;
end;

Подскажите плиз, что делать...


 
Алексей_К   (2005-05-26 06:08) [1]

Оказываеться для передачи файлов необходимо в теге <Form> указать следующее:

<form method="POST" action="..." ENCTYPE="multipart/form-data">

Файл отправляеться, есть одно "но". Файлы имеющие размер более 73536 байт усекаются, т.е. 1 меговый файл весь не скачаеться на сервер, а только первые его 73536 байта.

Может у кого-нибудь есть инфа по этой части?



Страницы: 1 вся ветка

Текущий архив: 2005.09.11;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.044 c
3-1122904417
Ольга
2005-08-01 17:53
2005.09.11
Не выполняется запрос к VIEW


4-1122030040
Layner
2005-07-22 15:00
2005.09.11
Как закрыть приложение из батника


5-1097084089
TRyaSS
2004-10-06 21:34
2005.09.11
Компонент влияющий на форму


14-1123920047
Копир
2005-08-13 12:00
2005.09.11
Один довод для усиления мусульманской диаспоры в развитых странах


1-1124747605
kimona
2005-08-23 01:53
2005.09.11
RichEdit and background Image