Ik heb een Logica aangemaakt, maar in mijn php is $_POST leeg. Instellingen:
methode: post
url: https://www.xxx.nl/xx.php
headers: content-type: application/json; charset=utf-8
body: {“datum”: Datum, “tijd”: etc.}
(Die Datum is een tag van Homey)
In mijn code loop ik de postings door:
foreach($_POST as $key => $value) {
Die mail ik vervolgens ff voor de test naar mezelf. De mail komt aan, maar er was geen enkele $_POST .
Enig idee wat ik fout doe?
Kun je een screenshot maken van de instellingen? Zoals het er nu op lijkt zet je geen quotes om de Datum heen, bijvoorbeeld.
Klopt, quotes/aanhalingtekens had ik niet gedaan. Net wel, maar hielp niet:
Kan je server wel omgaan met al die extra spaties? Heb je al eens geprobeerd of het werkt als je helemaal geen tags gebruikt maar een statisch stuk JSON?
Na een poosje puzzelen ben ik er achter.
Ik was gewend om json berichten die vanuit de browser werden gedaan via $_POST op te vragen.
Blijkbaar werkt een posting vanuit Homey anders, want ik moest de posting nu via file_get_contents(“php://input”) ophalen, dan met json_decode() omzetten, daarna pas met die foreach die ik had vermeld hierboven doorlopen.
Ofwel, probleem opgelost! Dank voor je hulp!