Einzelnen Beitrag anzeigen

BerTa

Registriert seit: 31. Aug 2004
Ort: Dinklage
77 Beiträge
 
Delphi 7 Enterprise
 
#12

AW: Sonderzeichen XML-Datei

  Alt 25. Jun 2015, 15:36
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:
<![CDATA[Wert]]>
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...
  Mit Zitat antworten Zitat