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;