Hi,
ich erzeuge mir eine
XML-Datei die als Request an eine
URL gesendet wird.
Wenn ich die Datei erzeuge sehen die CDATAs meiner Meinung nach auch korrekt aus.
Im Response Stream erscheinen diese aber als wär es ein reiner Text.
Code:
UebXml := TXMLDocument.Create(nil);
UebXml.Active := True;
UebXml.Version := '1.0';
UebXml.Encoding := 'UTF-8';
UebXml.Options := UebXml.Options + [doNodeAutoIndent];
UebXml.DocumentElement := UebXML.CreateNode('GambioXML', ntElement, '');
UebXml.DocumentElement.AddChild('general').AddChild('function').NodeValue := ueArt;
UebXml.DocumentElement.ChildNodes.Nodes['general'].AddChild('session_key').NodeValue := gsKey;
UebXml.DocumentElement.AddChild('parameters');
UebXml.DocumentElement.ChildNodes.Nodes['parameters'].AddChild('products');
PosXmlNode := UebXml.DocumentElement.ChildNodes.Nodes['parameters'].ChildNodes.Nodes['products'].AddChild('product');
PosXmlNode.Attributes['action'] := 'insert';
PosXmlNode.AddChild('external_product_id').NodeValue := MyQHauptArtikelhaupt_art_nr.AsString;
PosXmlNode.AddChild('quantity').NodeValue := 9999;
PosXmlNode.AddChild('price').NodeValue := 0;
PosXmlNode.AddChild('status').NodeValue := 1;
SetText(PosXmlNode.AddChild('name'),trim(MyQHauptArtikelbez1.AsString),'2','de','0',true);
zwNode := PosXmlNode.AddChild('name');
zwNode.Attributes['language_id'] := 2;
zwNode.Attributes['language_iso'] := 'de';
CDataNode := uebXML.CreateNode(MyQHauptArtikelbez1.AsString,ntCData);
zwNode.ChildNodes.Add(CDataNode);
RequestListe := TStringList.Create;
RequestListe.Values['gambio_api_xml'] := UebXml.XML.Text;
UebXml.Active := false;
UebXml := nil;
lResStream := TMemoryStream.Create;
try
HttpPostURL(ConfigRec.web_url,RequestListe.Text,lResStream);
except
ADDMem('Fehler bei SetData "' + ueArt + '". ' );
exit;
end;
alles läuft, aber nichts geht...