J'essaie d'analyser les données JSON dans mon application Rails 3 avec JSON.parse
. Je continue à avoir cette erreur:
737: jeton inattendu à '{\ "0 \": {\ "class \":\"window \",\"text \":\"Testing \",\"style \":\"position: Absolute; haut: 8px; gauche: 8px; largeur: 560px; hauteur: 290px; z-index: 0;\"}
Le JSON réel est beaucoup plus long, mais il est fondamentalement le même.
Eh bien, nous ne pouvons répondre que sur la partie du JSON que vous nous avez montrée, mais cela pose deux problèmes:
"
) sont échappés; ils n'ont pas besoin de l'être sauf s'ils sont utilisés dans une chaîne à double notation, ce qui, apparemment, ne le sont pas.}
).Sinon, il passe sur https://jsonlint.com/ .
Dans mon cas, c’était un caractère de tabulation caché qui n’apparaissait que lorsque je l’avais collé dans vim.
Vous pouvez directement utiliser la méthode JSON.Parse()
in-build:
content = "[{\"addon_id\":\"1\",\"addon_price\":\"5\"}]"
# OUTPUT at Console => "[{\"addon_id\":\"1\",\"addon_price\":\"5\"}]"
JSON.parse(content.gsub('\"', '"'))
# OUTPUT at Console => [{"addon_id"=>"1", "addon_price"=>"5"}]