Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi Http.post Response.DataString wird nicht gefüllt (https://www.delphipraxis.net/178292-http-post-response-datastring-wird-nicht-gefuellt.html)

ssmzypen 30. Dez 2013 19:32

Http.post Response.DataString wird nicht gefüllt
 
Hallo Zusammen,

bin gerade neu eingetreten in das Forum und habe gleich eine
Frage.

Ich mache die ersten Schritte mit Delphi XE2 und Indy 10 habe vorher eine Delphi 6 Anwendung geschrieben und habe Indy 8 benutzt bei dem ich folgenden Befehl gefüllt bekommen habe.

Idhttp1.Post('URL',XML-File,Response);
Antwort := Response.DataString;

Nun bei Delphi XE2 und Indy10 bleibt der gleiche Befehl leer.
bzw der String Antwort bleibt leer, somit kann ich diesen nicht auswerten.

Ich bin mir nicht sicher ob alle diese INFOS ausreichen. Aber vielleicht hat ja einer von euch einen Lösungsansatz.


Heinrich :(

nahpets 30. Dez 2013 19:58

AW: Http.post Response.DataString wird nicht gefüllt
 
Schau mal bitte, ob du damit zum gewünschten Ergebnis kommst:
Delphi-Quellcode:
Antwort := Idhttp1.Post('URL',XML-File,Response);
Zwischen den einzelnen Indy-Versionen ändert sich ab und an mal was, so dass sie nicht unbedingt abwärtskompatibel sind.

In einem meiner Programm nutze ich folgende Funktion:
Delphi-Quellcode:
function AddQuiqTip(idHTTP : TIdHTTP; sText : String) : String;
var
  data: TIdMultiPartFormDataStream;
begin
  data := TIdMultiPartFormDataStream.Create;
  try
    { add the used parameters for the script }
    data.AddFormField('action', 'add');
    data.AddFormField('quip', sText);
    data.AddFormField('add', 'Add This Quip');
    { Call the Post method of TIdHTTP and read the result into TMemo }
    Result := IdHTTP.Post('https://www.xyz.com/quips.cgi', data);
  finally
    data.Free;
  end;
end;

ssmzypen 31. Dez 2013 08:27

AW: Http.post Response.DataString wird nicht gefüllt
 
Hallo nahpets

vielen Dank für die schnelle Reaktion.
ich habe diese Kombonente überhaupt nicht.

TIdMultiPartFormDataStream
ich habe Indy 10.5.8.0 installiert, kannst du mir sagen
wo ich die herbekomme.

Heinrich

Sir Rufo 31. Dez 2013 08:35

AW: Http.post Response.DataString wird nicht gefüllt
 
Das ist auch keine Komponente, sondern einfach eine Klasse und du musst schauen/suchen in welcher unit die deklariert ist.

Bei Indy8 bin ich da überfragt, bei Indy10 ist diese in der unit
Delphi-Quellcode:
IdMultipartFormData
deklariert

ssmzypen 31. Dez 2013 10:52

AW: Http.post Response.DataString wird nicht gefüllt
 
Hallo Sir Rufo,

habe die Klasse eingebunden, vielen Dank.

Heinrich

Sir Rufo 31. Dez 2013 11:29

AW: Http.post Response.DataString wird nicht gefüllt
 
Zitat:

Zitat von ssmzypen (Beitrag 1241558)
Hallo Sir Rufo,

habe die Klasse eingebunden, vielen Dank.

Heinrich

Nein, du hast die unit eingebunden in der die Klassendefinition enthalten ist ;)


Alle Zeitangaben in WEZ +1. Es ist jetzt 09:45 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz