Ich habe versucht, einen Shopify Webhook (documentation here) über den Shopify Admin-Bereich einzurichten. Bis jetzt war ich nicht in der Lage, irgendwelche der Daten zu nehmen, die in einem Test-Webhook mit mehreren Methoden gesendet werden, aber ich weiß, dass es sendet, weil ich einen Requestbin erstellt habe und gesehen habe, dass Daten durchkommen.Empfangen von JSON in PHP und Verwendung von Daten
Ich habe dieses Stück Code hier auf Stackoverflow gefunden.
header('Access-Control-Allow-Origin: *');
$postdata = file_get_contents("php://input");
$file = "log.txt";
$current = file_get_contents($file);
$current .= $postdata;
file_put_contents($file, $current);
echo $current;
Bis jetzt ist es der einzige Code, den ich verwenden konnte, um tatsächlich JSON zu sehen. Aber ich möchte das JSON nicht jedes Mal in die Datei "log.txt" schreiben, wenn der Webhook ausgelöst wird. Aber sobald ich versuche, den Code zu entfernen oder anzupassen, sehe ich keinen JSON mehr. Es scheint, dass ich $postdata
in eine Datei schreiben muss und dann den Inhalt abrufen muss, um ein Array zu erhalten.
Ist es möglich, auf den JSON zuzugreifen, ohne ihn vorher in eine andere Datei schreiben zu müssen?
'$ data = json_decode (file_get_contents ('php: // input'));' sollte alles sein, was benötigt wird, um den JSON zu erhalten. Zeigt 'var_dump ($ data);' in diesem Fall nicht die richtigen Informationen? – drew010
'var_dump ($ data);' gibt 'NULL' nur zurück, wenn ich' $ data = json_decode benutze (file_get_contents ('php: // input')); ' – Brendin
Was bekommst du, wenn du den json_decode entfernst? Alles, was von php: // überhaupt kommt? Ich frage mich, ob einige Anfragen keine Daten enthalten oder in einem anderen Format vorliegen. – drew010