Frage

Im derzeit mit einer API arbeiten, die wir mit einer Post-Anforderung senden unsere Sammlung Details in XML zu ihrem Server erfordert.

Im Moment gibt es wichtige, aber es funktioniert nicht, so möchte ich die Ausgabe der gesendeten XML in eine txt-Datei, so kann ich wirklich sehen was gesendet !!

Statt auf ein Dokument namens Ziel der API im Posting veröffentlichen, aber die xml seine seine Aufzeichnung ausgibt scheint wirklich falsch. Hier ist mein Ziel Skript, beachten Sie, dass die Buchung Skript Beiträge 3 Artikel, so dass die Datei geschrieben werden Details der einzelnen Post-Anforderung einer nach dem anderen haben sollte.

<?php

error_reporting(E_ALL);
ini_set('display_errors', 1);

// get the request data...
$payload = '';
$fp = fopen('php://input','r');
$output_file = fopen('output.txt', 'w');
while (!feof($fp)) {
    $payload .= fgets($fp);
    fwrite($output_file, $payload);
}

fclose($fp);
fclose($output_file);
?> 

Ich habe auch versucht die folgenden, aber das ist nur die letzte Post-Anforderung aufgezeichnet, so dass nur 1 Auflistelement in der txt-Datei aufgezeichnet wurde, statt alle 3

output_file = fopen('output.txt', 'w');
while (!feof($fp)) {
    $payload .= fgets($fp);
}
fwrite($output_file, $payload);
fclose($fp);
fclose($output_file);

Ich weiß, im etwas wirklich offensichtlich fehlt, aber ive an diesem ganzen Morgen suchen!

War es hilfreich?

Lösung

Ändern

$output_file = fopen('output.txt', 'w');

$output_file = fopen('output.txt', 'a');

Auch ändern

$payload .= fgets($fp);

$payload = fgets($fp);

Andere Tipps

Sie sollten wahrscheinlich curl statt, um den Inhalt zu holen und dann schreiben Sie es über Fwrite

Veränderung

  $payload .= fgets($fp);

 $payload = fgets($fp);
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top