Parse JSON () est difficile à utiliser car il ne gère pas bien les erreurs. Lors d'un rappel, peut-être depuis RunProgram ou un bouton, cela créera une boîte de dialogue de modèle indésirable annonçant l'échec. Il annoncera également l'échec dans le journal. Il faut du JSL supplémentaire pour le réparer :
New Window( "parsejson",
Button Box( "parse",
local( {birestore, errText},
birestore = Batch Interactive( 1 ); // makes an alert dialog from a button without this
errText = Log Capture( p = Parse JSON( "\!n" /* invalid json error */ ) ); // writes to the log without this
Batch Interactive( birestore ); // pop the previous behavior
If( Length( errText ), Throw( "Caught an error:" || char(errText) ) ); // handle unexpected error, somehow
/* use p here */
)
)
);
Suggestion : ajoutez un paramètre facultatif pour modifier le comportement, quelque chose comme parseJson(x, throwIfError() )
Analyse JSON de sécurité