Requete curl post et mosquitto
Posté : 09 janv. 2021, 20:18
Bonjour à tous,
Merci de passer sur mon sujet et si vous avez un peu de temps pour m'aider, m'aiguiller dans mes recherches mille mercis.
Mon objectif est que la réponse http via curl, soit mise en forme puis envoyer à mon broker (mosquitto).
Tout de suite je passe la mise en forme que j'ai réussi à faire mais ma requete curl en php ne fonctionne pas
Ma rêquete curl :
curl -d "access_token=XXX&language=fr_FR&userId=XXX&checkcode=XXX" -H "Content-Type: application/x-www-form-urlencoded" -X POST "XXX"
donne :
{"code":1,"data":{"XXX":{"duration":"7","total":"10.752255","month":"1.168628","year":"1.168628","today":"0.180580","co2":"7.906070","tree":"0.395303","power":"13.000000","type":0,"capacity":"2.18"}},"message":"Réussir"}
J'ai tenté de faire cela en php
<?php
$data = array(
'access_token' => 'XXX',
'language' => 'fr_FR',
'userId' => 'XXX',
'checkcode' => 'XXX');
$curls = curl_init();
curl_setopt($curls, CURLOPT_URL, 'XXX');
curl_setopt($curls, CURLOPT_POST, true);
curl_setopt($curls, CURLOPT_POSTFIELDS, http_build_query($data));
curl_setopt($curls, CURLOPT_HTTPHEADER, array('Content-Type: application/x-www-form-urlencoded'));
$reponse = curl_exec($curls);
curl_close($curls);
echo $reponse;
?>
Et là c'est le drame... fatal error à la ligne $curls = curl_init(); et je ne comprends pas ...
Après la mise en forme de la réponse, j'ai trouvé comme faire
Enfin, peux ton lancer la commande ci dessous en php avec la variable $reponse comme cela ? :
mosquitto_pub -h localhost -t aps -m $reponse
Merci encore
Merci de passer sur mon sujet et si vous avez un peu de temps pour m'aider, m'aiguiller dans mes recherches mille mercis.
Mon objectif est que la réponse http via curl, soit mise en forme puis envoyer à mon broker (mosquitto).
Tout de suite je passe la mise en forme que j'ai réussi à faire mais ma requete curl en php ne fonctionne pas
Ma rêquete curl :
curl -d "access_token=XXX&language=fr_FR&userId=XXX&checkcode=XXX" -H "Content-Type: application/x-www-form-urlencoded" -X POST "XXX"
donne :
{"code":1,"data":{"XXX":{"duration":"7","total":"10.752255","month":"1.168628","year":"1.168628","today":"0.180580","co2":"7.906070","tree":"0.395303","power":"13.000000","type":0,"capacity":"2.18"}},"message":"Réussir"}
J'ai tenté de faire cela en php
<?php
$data = array(
'access_token' => 'XXX',
'language' => 'fr_FR',
'userId' => 'XXX',
'checkcode' => 'XXX');
$curls = curl_init();
curl_setopt($curls, CURLOPT_URL, 'XXX');
curl_setopt($curls, CURLOPT_POST, true);
curl_setopt($curls, CURLOPT_POSTFIELDS, http_build_query($data));
curl_setopt($curls, CURLOPT_HTTPHEADER, array('Content-Type: application/x-www-form-urlencoded'));
$reponse = curl_exec($curls);
curl_close($curls);
echo $reponse;
?>
Et là c'est le drame... fatal error à la ligne $curls = curl_init(); et je ne comprends pas ...
Après la mise en forme de la réponse, j'ai trouvé comme faire
Enfin, peux ton lancer la commande ci dessous en php avec la variable $reponse comme cela ? :
mosquitto_pub -h localhost -t aps -m $reponse
Merci encore