Einzelnen Beitrag anzeigen

nat

Registriert seit: 10. Nov 2005
216 Beiträge
 
RAD-Studio 2009 Pro
 
#1

Dateiupload mit TidHTTP.Post() senden 2bytes (#13#10) zuviel

  Alt 3. Mai 2006, 03:03
hallo.
ich benutze folgenden code um mit TidHTTP einen html-fileupload (per post)
zu senden.

Delphi-Quellcode:
var
  DataStream: TIdMultiPartFormDataStream;
...
    FHTTP.Request.ContentType := 'multipart/form-data';
    try
      DataStream := TIdMultiPartFormDataStream.Create;
      DataStream.AddFormField('german', '1');
      DataStream.AddFormField('u', 'Upload!');
      DataStream.AddFile('filecontent', filename, 'application/octet-stream');

      response := FHTTP.Post(FURL, DataStream);
    except
      //...
    end;
das klappt auch wunderbar (habs local mit nem php-script getestet).
das einzige problem ist, dass die hochgeladene datei 2 bytes
größer ist als die ursprüngliche datei. die beiden bytes sind immer
#13#10 (CRLF). an dem php-script liegt es nicht, das funzt 100%ig.
auf gut deutsch: indy hängt diese 2 bytes bei der anfrage einfach an.
habe auch schon mit dem content-type rumgefummelt, ohne erfolg.
hat jmd ne ahnung warum und wie ich das verhindern kann?

benutze delphi7 und indy9.
  Mit Zitat antworten Zitat