Einzelnen Beitrag anzeigen

Andreas L.

Registriert seit: 23. Mai 2011
Ort: Furth im Wald
308 Beiträge
 
Delphi 11 Alexandria
 
#11

AW: Mit IdHttp (Indy) Text in Feld auf Webseite eintragen

  Alt 11. Apr 2013, 17:43
Ich habe es mal zunächst ohne Auswertung versucht, bekomme aber leider eine Exception.
Und welche Exception (Meldung) bekommst du? In welcher Zeile?

Hatte beim tippen des Codes nicht mehr daran gedacht, dass die Übergabe eines TStrings-Objekts als Request an IdHTTP.Post Probleme machen kann. Das XML muss erst in einen Stream geschrieben werden welcher dann an Post übergeben werden kann. In einen meiner Codes habe ich das so gemacht:

Delphi-Quellcode:
var
  ...
  SendStream: TStream;
begin
  // XML erzeugen
  ...
  SendStream := TMemoryStream.Create; // oder TStringStream + WriteString wie in Bummis Code
  try
    SendStream.Write(XML.Text[1], Length(XML.Text)); // bei Delphi 2009+: Length * 2 oder AnsiString statt String verwenden
    SendStream.Position := 0;

    // ... IdHTTP erzeugen, etc.

    IdHttp.Post(URL, SendStream, Response);

    // ...
  finally
    FreeAndNil(SendStream);
  end;
end;
Außerdem habe ich IdhTTP folgende Properties gesetzt:
Delphi-Quellcode:
      // HTTP-Einstellungen setzen
      HTTP.Request.Accept := '*/*';
      HTTP.Request.ContentType := 'text/xml';
      HTTP.Request.Connection := 'Keep-Alive';
      HTTP.HandleRedirects := True;
Andreas Lauß
Blog
  Mit Zitat antworten Zitat