Aller au contenu

Problème Encodage Table Json


jojo

Messages recommandés

Désolé, c'est encore moi, des soucis avec l'encodage d'une table json dans une variable globale. (au départ d'une VD, PAS d'une scène)

 

Lorsque je crée la variable Tmp_Salon, j'obtiens ceci via l'api (http://192.168.2.96/api/globalVariables?name=Tmp_Salon)

{"name":"Tmp_Salon","value":"0","readOnly":false,"isEnum":false,"created":1423779706,"modified":1423779706}

jusqu'ici, tout va bien  :)

 

Ensuite je la remplis avec le code suivant depuis un bouton d'une VD :

local Var = 'Tmp_Salon'

local TmpVar = {}
TmpVar.Min = 200
TmpVar.Max = -200
TmpVar.Date = os.time()
fibaro:debug('TmpVar.Min = '..TmpVar.Min)
--fibaro.debug('TmpVar.Max = '..TmpVar.Max)
fibaro:debug("TmpVar.Date = "..TmpVar.Date)
-- Sauvegarde TmpVar dans la variable globale
fibaro:setGlobal(Var,json.encode(TmpVar))
 

Le debug me donne l'erreur suivante :

[DEBUG] 23:27:21: TmpVar.Min = 200
[ERROR] 23:27:21: line :debug expected 2..2 args, got 1

(c'est pour cela que j'ai mis "--fibaro.debug('TmpVar.Max = '..TmpVar.Max)" en commentaire

 

J'ai alors l'erreur suivante dans le debug : (erreur lors du décodage de la table)

[DEBUG] 23:30:52: TmpVar.Min = 200
[DEBUG] 23:30:52: TmpVar.Date = 1423780252
[ERROR] 23:30:52: line 13: Expected value but found invalid token at character 1

et ma variable affiche ceci par l'api :

{"name":"Tmp_Salon","value":"{\"Max\":-200,\"Date\":1423780252,\"Min\":200}","readOnly":false,"isEnum":false,"created":1423779706,"modified":1423780252}

Ce qui me semble très bizarre, ce sont les \. Serait-ce la cause des erreurs ?

 

Quelqu'un peut-il me donner une bonne raison pour que je me flagelle ? J'ai sà»rement fait une bêtise, mais j'ai beau retourner le problème dans tous les sens, je n'arrive pas à  comprendre.

 

Merci de votre aide.

Lien vers le commentaire
Partager sur d’autres sites

Merci Joss Alf,

Malheureusement, j'utilise déjàcela dans un VD.

Donc àpriori tu ne vois pas d'erreur dans le code ?

Le \ est-ce cela qui est la cause du problème json ?

Ceci dit, j'ai déjàune erreur en ligne 9, AVANT l'encodage json ...

Lien vers le commentaire
Partager sur d’autres sites

×
×
  • Créer...