Update jeeApi.php#1791
Conversation
L'api de base 'object' ne marche plus : http://jeedomIP/core/api/jeeApi.php?apikey=xxx&type=object Voici un correctif possible (l'autre serait de descendre if (class_exists($type) && method_exists($type, 'event')) plus bas dans le code
|
Tu aurai un exemple ? On ne comprends pas bien le soucis en fait. |
|
|
|
L'exemple est l'utilisation de l'API de base pour récupérer la liste des objets Jeedom avec l'url postée au 1er post : |
|
C'est ce code qui est en dessous et qui n'est jamais atteint à cause de l'erreur 500 : Donc non je parle bien de quand |
|
https://doc.jeedom.com/fr_FR/core/4.0/api_http Et la doc est ok : Objet Voici l’URL = http://#IP_JEEDOM#/core/api/jeeApi.php?apikey=#APIKEY#&type=object Renvoie en json la liste de tous les objets de Jeedom. ;-) |
|
Je viens de tester sur smart buster php7.3 v4.1 Quel est ta version de php ? |
|
Encore une fois je parle de l'API http de base et non pas de l'api JSON RPC ! avec cette url : http://#IP_JEEDOM#/core/api/jeeApi.php?apikey=#APIKEY#&type=object |
|
http://#IP_JEEDOM#/core/api/jeeApi.php?apikey=#APIKEY#&type=object Toujours sur Smart à jour, je récupère bien le json de tout les objets, aucune erreur |
|
Ok, je vais inspecter un peu plus alors pour trouver plus précisément ce qui génère cette erreur 500 chez moi. |
|
Smart Je viens de tester c'est bien le code |
|
Il y a un truc lié avec le core de jeedom car ça crash après avoir inclus le core : Je vais voir si je trouve pourquoi... |
|
Ok j'ai trouvé, mais ce n'était pas du gâteau ! le pb vient de qui utilise: C'est la fonction d'autoload qui provoque le crash. Contenu du fichier Par contre pourquoi je suis le seul à avoir ce crash ici ? Bref le PR résout ce pb, même si je ne sais pas pourquoi le fait que l'autoloader charge cette class provoque une erreur 500... |
|
En fait, pour compléter, le problème est également résolu si la class object contient au moins une variable : Là cela ne crash plus. |
|
Y'a pas de fichier core/class/object.class.php la class object est réservée par php et a été remplacé par jeeObject déjà en v3. |
|
Bah pourtant le fichier est bien présent chez moi, donc potentiellement chez d'autres vu que j'ai toujours fait que des manips et des majs officielles sur ma smart de production (jamais même de beta) |
|
Par contre je l'ai depuis longtemps et j'ai été en V3. |
|
Non aucun script post update particulier et j'ai eu le problème directement après la maj. Le fichier a bien l’horodatage correspondant à la date de ma migration, comme tous les autres fichiers... Bref, je dis ça c'est pour les autres qui seraient éventuellement touchés, car moi j'ai pu résoudre le pb en 5min... |
|
J'ai deux smarts en production qui sont passées par le restore buster puis update 4.1.17 et aucun n'a ce fichier. Sinon y'a community pour discuter ... |
|
Oups j'ai édité au dessus au lieu de réponde... Non aucun script post update particulier et j'ai eu le problème directement après la maj. Le fichier a bien l’horodatage correspondant à la date de ma migration, comme tous les autres fichiers... Bref, je dis ça c'est pour les autres qui seraient éventuellement touchés, car moi j'ai pu résoudre le pb en 5min... |
L'api de base 'object' ne marche plus :
http://jeedomIP/core/api/jeeApi.php?apikey=xxx&type=object
Voici un correctif possible (l'autre serait de descendre le test
if (class_exists($type) && method_exists($type, 'event'))plus bas dans le code