Форум АНТИЧАТ

Форум АНТИЧАТ (https://forum.antichat.xyz/index.php)
-   С/С++, C#, Delphi, .NET, Asm (https://forum.antichat.xyz/forumdisplay.php?f=24)
-   -   Как отправить файл через POST? (https://forum.antichat.xyz/showthread.php?t=95840)

_nic 11.12.2008 01:23

Как отправить файл через POST?
 
Что то ничего немогу найти в гугле по этому поводу ,только все про авторизацию находит и все :( А как файл с помощью сокета по хттп протоколу передать найти немогу :( Может кто нибудь подскажет как надо правильно сформировать запрос?

preda1or 11.12.2008 01:28

Цитата:

http://geekswithblogs.net/rakker/archive/2006/04/21/76044.aspx
Вроде поможет

WAR!9G 11.12.2008 01:31

Если не ошибаюсь, в мою то молодость было так:
Код:

try
    Stream := TIdMultipartFormDataStream.Create;
    Stream.AddFile('filename', 'C:\porno.jpg', 'image/jpeg');
    s:=idhttp1.Post('http://www.site.com/upload.php',Stream);
  except
  end;
  zap.Free;


_nic 11.12.2008 02:21

Цитата:

Сообщение от WAR!9G
Если не ошибаюсь, в мою то молодость было так:
Код:

try
    Stream := TIdMultipartFormDataStream.Create;
    Stream.AddFile('filename', 'C:\porno.jpg', 'image/jpeg');
    s:=idhttp1.Post('http://www.site.com/upload.php',Stream);
  except
  end;
  zap.Free;


Мне инди не подходит.К тому же на bds 2006 оно кривое и непашет :mad:

De-visible 11.12.2008 02:54

Тогда юзай WinSock.
Снифаешь какой нить запрос(например заливка файла куда нить), смотришь что как почем, а дальше дело прямых рук...

ShAnKaR 11.12.2008 03:22

http://www.ietf.org/rfc/rfc1867.txt

_nic 11.12.2008 21:41

Цитата:

Сообщение от De-visible
Тогда юзай WinSock.
Снифаешь какой нить запрос(например заливка файла куда нить), смотришь что как почем, а дальше дело прямых рук...

А чем снифать то?А то лью файл на рапиду,смотрю в навископе а там ПОСТ запрос и рядом нигде не валялся :(

De-visible 11.12.2008 22:47

Цитата:

Сообщение от _nic
А чем снифать то?А то лью файл на рапиду,смотрю в навископе а там ПОСТ запрос и рядом нигде не валялся :(

каким браузером пользуешься?

_nic 12.12.2008 00:34

Цитата:

Сообщение от De-visible
каким браузером пользуешься?

Оперой

_nic 12.12.2008 17:35

Гружу файлы на рапиду си смотрю в навископе там где по идее должен быть ПОСТ такие вот непонятные заголовки
Код:

HTTP/1.0 200 OK
P3P: CP="ALL DSP COR CURa ADMa DEVa TAIa PSAa PSDa IVAa IVDa CONa TELa OUR STP UNI NAV STA PRE"
Date: Fri, 12 Dec 2008 13:27:46 GMT
Connection: close
Accept-Ranges: bytes
Content-Type: text/html; charset=ISO-8859-1
Cache-Control: no-cache
Content-Length: 8378

HTTP/1.0 200 OK
P3P: CP="ALL DSP COR CURa ADMa DEVa TAIa PSAa PSDa IVAa IVDa CONa TELa OUR STP UNI NAV STA PRE"
Date: Fri, 12 Dec 2008 13:27:47 GMT
RemovedHdr: close
Accept-Ranges: bytes
Content-Type: text/html
Expires: Fri, 12 Dec 2008 13:57:47 GMT
Removed-Header: 3549

Особенно меня смущает эта строка :confused:
Код:

P3P: CP="ALL DSP COR CURa ADMa DEVa TAIa PSAa PSDa IVAa IVDa CONa TELa OUR STP UNI NAV STA PRE"
Кто нибудь знает что эта чепуха вообще обозначает?

Dobby007 12.12.2008 18:11

Цитата:

Сообщение от _nic
Гружу файлы на рапиду си смотрю в навископе там где по идее должен быть ПОСТ такие вот непонятные заголовки
Код:

HTTP/1.0 200 OK
P3P: CP="ALL DSP COR CURa ADMa DEVa TAIa PSAa PSDa IVAa IVDa CONa TELa OUR STP UNI NAV STA PRE"
Date: Fri, 12 Dec 2008 13:27:46 GMT
Connection: close
Accept-Ranges: bytes
Content-Type: text/html; charset=ISO-8859-1
Cache-Control: no-cache
Content-Length: 8378

HTTP/1.0 200 OK
P3P: CP="ALL DSP COR CURa ADMa DEVa TAIa PSAa PSDa IVAa IVDa CONa TELa OUR STP UNI NAV STA PRE"
Date: Fri, 12 Dec 2008 13:27:47 GMT
RemovedHdr: close
Accept-Ranges: bytes
Content-Type: text/html
Expires: Fri, 12 Dec 2008 13:57:47 GMT
Removed-Header: 3549

Особенно меня смущает эта строка :confused:
Код:

P3P: CP="ALL DSP COR CURa ADMa DEVa TAIa PSAa PSDa IVAa IVDa CONa TELa OUR STP UNI NAV STA PRE"
Кто нибудь знает что эта чепуха вообще обозначает?

На рапиду значит говоришь? Ну вот че выдает HttpAnalyzer при заливке туда файла с оперой:
Код:

POST /cgi-bin/upload.cgi?rsuploadid=150750792611358172 HTTP/1.1
User-Agent: Opera/9.51 (Windows NT 5.1; U; ru)
Host: rs244l3.rapidshare.com
Accept: text/html, application/xml;q=0.9, application/xhtml+xml, image/png, image/jpeg, image/gif, image/x-xbitmap, */*;q=0.1
Accept-Language: ru,en;q=0.9,ru-RU;q=0.8
Accept-Charset: iso-8859-1, utf-8, utf-16, *;q=0.1
Accept-Encoding: deflate, gzip, x-gzip, identity, *;q=0
Expect: 100-continue
Referer: http://rapidshare.com/
Connection: Keep-Alive, TE
TE: deflate, gzip, chunked, identity, trailers
Content-Length: 299754
Content-Type: multipart/form-data; boundary=----------kXaflTq9SkBiH1m0Fi9gAw

------------kXaflTq9SkBiH1m0Fi9gAw
Content-Disposition: form-data; name="filecontent"; filename="owned_r.gif"
Content-Type: image/gif

GIF89a



zЈkЏYvG]0Ta/IQ{~|opke>zRBђr!¤f•\ЉTЂOsFZ7O-…Z"†`F*:#,’b\:'`<
.........................................

------------kXaflTq9SkBiH1m0Fi9gAw
Content-Disposition: form-data; name="u.x"

28
------------kXaflTq9SkBiH1m0Fi9gAw
Content-Disposition: form-data; name="u.y"

58
------------kXaflTq9SkBiH1m0Fi9gAw--

Вместо точек только продолжение контента файла... Так что Ничего здесь противоестественного нет ;)
Щас только что увидел... Вот то что ты как раз написал про "непонятные заголовки" это есть уже ответ сервера (рапиды) на твой пост-запрос:
Код:

HTTP/1.1 200 OK
P3P: CP="ALL DSP COR CURa ADMa DEVa TAIa PSAa PSDa IVAa IVDa CONa TELa OUR STP UNI NAV STA PRE"
Date: Fri, 12 Dec 2008 13:46:42 GMT
Connection: close
Accept-Ranges: bytes
Content-Type: text/html; charset=ISO-8859-1
Cache-Control: no-cache
Content-Length: 14986


_nic 13.12.2008 17:16

Пытаюсь слать на такой скрипт
Код:

<?php

$uploaddir = '/localhost/www/';

$uploadfile = $uploaddir . basename($_FILES['filecontent']['name']);

move_uploaded_file($_FILES['filecontent']['tmp_name'], $uploadfile);

exit();

?>

Запрос выглядит так
Код:

POST http://localhost/file.php HTTP/1.0
User-Agent: Opera/9.62 (Windows NT 5.1; U; ru) Presto/2.1.1
Host: localhost
Accept: text/html, application/xml;q=0.9, application/xhtml+xml, image/png, image/jpeg, image/gif, image/x-xbitmap, */*;q=0.1
Accept-Language: ru-RU,ru;q=0.9,en;q=0.8
Accept-Charset: iso-8859-1, utf-8, utf-16, *;q=0.1
Accept-Encoding: deflate, gzip, x-gzip, identity, *;q=0
Expect: 100-continue
Proxy-Connection: Keep-Alive, TE: deflate, gzip, chunked, identity, trailers
Content-Length: 81651
Content-Type: multipart/form-data
Content-Disposition: form-data; name="filecontent"; filename="owned_r.txt"
Content-Type: text/html

DATA0
M```0````(`#``0`"`0`1'@`.,C`Y+C@U+C#R.2XQ,S($`-D0``9?7W5T;7H1
M`+<R-C8R-34W-38N,3(R.$@S-CDP.2XR+C,N=71M8W-R/6=O;V=L97QU=&UC
M8VX]*&]R9V%N:6,I?'5T;6-M9$UO<F=A;FEC?'5T;6-T<CTE1$`E0C,E1$`E
M0C0E1$`E0C4E,C!Q:7`E,C`E1$#E.$4E1$#E.$`E1$`E0C`E1$`E0D0E1$`E
M0C@E1$#E.$(E,C`E1$`E0D8E1$`E0C`E1$#E.$`E1$`E0D4E1$`E0D(E1$`E
M0C@E,T82``@`````2B\I[!,`"`````!)/I`L`P!6#``&7
................................................................

Только вот файл не загрузился :( Что я мог не доглядеть?
Хм изучаю сейчас то что выдал HttpAnalyzer .На вкладке PostData почему то пусто.Видать я допусти какую то ошибку при формировании запроса.Но вот какую :confused:


Время: 17:02