Hallo!
Ich bekomme aus einem Ariba-System cXML-Daten an ein PHP-Skript (=SetupRequestHandler) gepostet, das diese XML-Daten verarbeiten soll. In der cXML-Doku steht, dass das XML per HTTP-Post geschickt wird, aber nicht wie (POST_VAR, Header, Body??).
Ich logge die Request-Header und HTTP_POST_VARS mit, allerdings steht dort kein cXML drin, d.h. ich habe das Problem, dass ich nicht weiß, wie ich mit PHP auf die XML-Daten zugreifen kann!?
Deshalb habe ich mal versucht per Telnet einfach einen Datenstrom an das PHP-Skript zu posten:
POST /path/SetupRequestHandler.php HTTP/1.1
Host: myhost.de
Content-Type: application/x-www-form-urlencoded
Content-Length: 10
Hallo Welt
Allerdings weiß ich nicht, wie ich mit PHP jetzt auf den Body zugreifen kann!? In $GLOBALS steht kein "Hallo Welt". Geht sowas überhaupt ohne Bezeichner!?
Es ist ja recht gängig XML-Daten per POST zwischen Servern hin und her zu schicken, hier ein Beispiel von php.net:
<?php
$XPost = "<XMLcontent>sameas above</XMLcontent>"
$url = "..same URL as above..";
$ch = curl_init(); // initialize curl handle
curl_setopt($ch, CURLOPT_URL,$url); // set url to post to
curl_setopt($ch, CURLOPT_RETURNTRANSFER,1); // return into a variable
curl_setopt($ch, CURLOPT_TIMEOUT, 4); // times out after 4s
curl_setopt($ch, CURLOPT_POSTFIELDS, $XPost); // add POST fields
$result = curl_exec($ch); // run the whole process
echo $result; //contains response from server
?>
Auf den XMLContent kann ich aber auch nur dann zugreifen, wenn ich $XPost als Array definiere, weil die Daten dann in einer POST_VAR stehen.
Danke für eure Hilfe!!
Patrick
Ich bekomme aus einem Ariba-System cXML-Daten an ein PHP-Skript (=SetupRequestHandler) gepostet, das diese XML-Daten verarbeiten soll. In der cXML-Doku steht, dass das XML per HTTP-Post geschickt wird, aber nicht wie (POST_VAR, Header, Body??).
Ich logge die Request-Header und HTTP_POST_VARS mit, allerdings steht dort kein cXML drin, d.h. ich habe das Problem, dass ich nicht weiß, wie ich mit PHP auf die XML-Daten zugreifen kann!?
Deshalb habe ich mal versucht per Telnet einfach einen Datenstrom an das PHP-Skript zu posten:
POST /path/SetupRequestHandler.php HTTP/1.1
Host: myhost.de
Content-Type: application/x-www-form-urlencoded
Content-Length: 10
Hallo Welt
Allerdings weiß ich nicht, wie ich mit PHP jetzt auf den Body zugreifen kann!? In $GLOBALS steht kein "Hallo Welt". Geht sowas überhaupt ohne Bezeichner!?
Es ist ja recht gängig XML-Daten per POST zwischen Servern hin und her zu schicken, hier ein Beispiel von php.net:
<?php
$XPost = "<XMLcontent>sameas above</XMLcontent>"
$url = "..same URL as above..";
$ch = curl_init(); // initialize curl handle
curl_setopt($ch, CURLOPT_URL,$url); // set url to post to
curl_setopt($ch, CURLOPT_RETURNTRANSFER,1); // return into a variable
curl_setopt($ch, CURLOPT_TIMEOUT, 4); // times out after 4s
curl_setopt($ch, CURLOPT_POSTFIELDS, $XPost); // add POST fields
$result = curl_exec($ch); // run the whole process
echo $result; //contains response from server
?>
Auf den XMLContent kann ich aber auch nur dann zugreifen, wenn ich $XPost als Array definiere, weil die Daten dann in einer POST_VAR stehen.
Danke für eure Hilfe!!
Patrick
Kommentar