Forums Développement Multimédia

Aller au contenu

lecture json et javascript

CODE Ajax JQuery EaseJs

6 réponses à ce sujet

#1 pierreflash

    Ceinture Marron

  • Members
  • PipPipPipPipPipPip
  • 117 messages

Posté 30 April 2013 - 18:40 PM

bjr
voila j ai un script java qui lit fichier json

loadData = function(){
var req = new XMLHttpRequest();
req.onreadystatechange = onLoadComplete=function() {
  if(req.readyState==4){
   parseData(req.responseText);alert(req.responseText);
  }
};
req.open("GET", 'http://storage.canalblog.com/49/44/401278/86104501.json');
//req.open("GET", 'typode.json');
req.send("");
}
 
en local avec req.open("GET", 'typode.json'); ca marche nickel et j ai bien le résultat escompté

mais quand je met le script et le json sur mon blog canal blog ( avec req.open("GET", 'http://storage.canalblog.com/49/44/401278/86104501.json') ;) ben ca ne marche pas ( alert ne donne rien)
je pense que ca vient crossdomainpolicy
alors j aimerai bien intégrer mon json directement dans mon javascript

var json="{
"
0":[[[0,0],[2,0],[2,3],[0,3],[0,0],[2,3]]],
"
1":[[[0,2],[2,0],[2,3]]],
"
2":[[[0,0],[2,0],[2,1],[0,3],[2,3]]],
"
3":[[[0,0],[2,0],[0,1],[2,1],[2,3],[0,3]]],
"
4":[[[0,0],[0,2],[2,2],[2,0]],[[2,2],[2,3]]],
"
5":[[[2,0],[0,0],[0,1],[2,1],[2,3],[0,3]]],
"
6":[[[2,0],[0,0],[0,3],[2,3],[2,1],[0,1]]],
.......
......
}"


 
mais ai droit erreur
quel type de variable pourrais utiliser pour stocker mon json?
merci d'avance réponses

#2 nicolas.gauville

    Ceinture Noire

  • Moderateur
  • PipPipPipPipPipPipPip
  • 238 messages

Posté 01 May 2013 - 00:28 AM

Salut,

L'erreur vient probablement des '"', que tu utilise autour de ta variable. Chaque " ouvre ou ferme une chaine de caractères, donc pour JS, tu as une chaine "{", puis 0, puis ":[[[0,0],[2,0],[2,3],[0,3],[0,0],[2,3]]],", etc.
Tu peux éventuellement essayer de mettre des antislashs pour lui dire d'ignorer ces caractères à l'intérieur de ton JSON, comme ça :

var json="{
\"0\":[[[0,0],[2,0],[2,3],[0,3],[0,0],[2,3]]],
\"1\":[[[0,2],[2,0],[2,3]]],
\"2\":[[[0,0],[2,0],[2,1],[0,3],[2,3]]],
\"3\":[[[0,0],[2,0],[0,1],[2,1],[2,3],[0,3]]],
\"4\":[[[0,0],[0,2],[2,2],[2,0]],[[2,2],[2,3]]],
\"5\":[[[2,0],[0,0],[0,1],[2,1],[2,3],[0,3]]],
\"6\":[[[2,0],[0,0],[0,3],[2,3],[2,1],[0,1]]],
.......
......
}"

 

(un "rechercher-remplacer" et ça devrait être réglé).

Les guillemets autour des 0:, 1:, .. ne sont pas forcément nécessaires, tu peux aussi les supprimer.
Si ton fichier est sur le même serveur, utiliser une adresse relative et non absolue devrait aussi régler le problème du crossdomain.

#3 dcz.switcher

  • Community Manager
  • PipPipPipPipPipPipPipPip
  • 2533 messages

Posté 01 May 2013 - 08:30 AM

En effet, les guillemets sont en trop, une autre petite remarque, tu es sûr de vouloir 2 niveaux de tableaux ?

[
    [
            [0,0],[2,0],[2,3],[0,3],[0,0],[2,3]
    ]
]
// est-ce qu'un niveau de moins ne suffirait pas ?
[
    [0,0],[2,0],[2,3],[0,3],[0,0],[2,3]
]
 

De plus, est-ce que le json est le format le plus adapté à ce que tu cherches ?

Si au final si tu utilises la syntaxe json.0, autant utiliser un tableau et array[0], non ?

Juste par curiosité, comment exploites tu ensuite le json ?


PS: il s'agit de javascript et non java ;-)
"Ce que l'on conçoit bien s'énonce clairement et les mots pour le dire arrivent aisément"

embryon de site

#4 pierreflash

    Ceinture Marron

  • Members
  • PipPipPipPipPipPip
  • 117 messages

Posté 01 May 2013 - 10:38 AM

bjr
j utilise http://json.parser.online.fr/ pour verifier que mon format ne me renvoie pas erreur
effectivement en ecrivant

image = {
"0":[[[0,0],[2,0],[2,3],[0,3],[0,0],[2,3]]],
"1":[[[0,2],[2,0],[2,3]]],
"2":[[[0,0],[2,0],[2,1],[0,3],[2,3]]]
};
 
je n ai pas d'erreur mais (en supprimant " ai erreur)
j utilise un json je ne l ai pas cree mon objet req.responseText me renvoi bien se format
je souhaite le stocker dans une variable car je ne peux pas lire le json quand je met le script sur mon blog

si je remplace le req.responseText par ma variable le JSON.parse(mavariable ) ca ne marche pas alors que le JSON.parse(req.responseText)marche tres bien pourtant mavariable est identique au req.responseText :cry:

#5 pierreflash

    Ceinture Marron

  • Members
  • PipPipPipPipPipPip
  • 117 messages

Posté 01 May 2013 - 10:41 AM

le req.responseText donne

{
"0":[[[0,0],[2,0],[2,3],[0,3],[0,0],[2,3]]],
"1":[[[0,2],[2,0],[2,3]]],
"2":[[[0,0],[2,0],[2,1],[0,3],[2,3]]],
"3":[[[0,0],[2,0],[0,1],[2,1],[2,3],[0,3]]],
"4":[[[0,0],[0,2],[2,2],[2,0]],[[2,2],[2,3]]],
"5":[[[2,0],[0,0],[0,1],[2,1],[2,3],[0,3]]],
"6":[[[2,0],[0,0],[0,3],[2,3],[2,1],[0,1]]],
"7":[[[0,0],[2,0],[0,3]],[[0,1],[2,1]]],
"8":[[[0,0],[2,0],[2,3],[0,3],[0,0]],[[0,1],[2,1]]],
"9":[[[2,1],[0,1],[0,0],[2,0],[2,1],[0,3]]],

"A":[ [[0,3],[0,0],[2,0],[2,1],[0,1]], [[2,1],[2,3]] ],
"B":[ [[0,1],[2,1],[2,3],[0,3],[0,0],[1,0],[1,1]] ],
"C":[ [[2,0],[0,0],[0,3],[2,3]] ],
"D":[ [[0,0],[1,0],[2,1],[2,3], [0,3],[0,0]] ],
"E":[ [[2,0],[0,0],[0,3],[2,3]], [[0,1],[2,1]] ],
"F":[ [[2,0],[0,0],[0,3]], [[0,1],[2,1]] ],
"G":[ [[2,0],[0,0],[0,3],[2,3],[2,2],[1,2]] ],
"H":[ [[0,3],[0,0]], [[2,3],[2,0]], [[0,1],[2,1]] ],
"I":[ [[1,3],[1,0]] ],
"J":[ [[0,0],[2,0],[2,3],[0,3],[0,2]] ],
"K":[ [[0,3],[0,0]], [[0,1],[2,0]], [[0.6, 0.6],[2, 3]] ],
"L":[ [[2,3],[0,3],[0,0]] ],
"M":[ [[0,3],[0,0],[1,1],[2,0],[2,3]] ],
"N":[ [[0,3],[0,0],[2,3],[2,0]] ],
"Ñ":[ [[0,3],[0,0],[2,3],[2,0],[1,1],[1,0]] ],
"O":[ [[0,0],[2,0],[2,3],[0,3],[0,0]] ],
"P":[ [[0,3],[0,0],[2,0],[2,2],[0,2]] ],
"Q":[ [[2,3],[0,3],[0,0],[2,0],[2,3],[1,2]] ],
"R":[ [[0,3],[0,0],[2,0],[2,2],[0,2]], [[1,2],[2,3]] ],
"S":[ [[2,0],[0,0],[0,1],[2,1],[2,3],[0,3]] ],
"T":[ [[0,0],[2,0]], [[1,0],[1,3]] ],
"U":[ [[0,0],[0,3],[2,3],[2,0]] ],
"V":[ [[0,0],[1,3],[2,0]] ],
"W":[ [[0,0],[0,3],[1,2],[2,3],[2,0]] ],
"X":[ [[0,0],[2,3]], [[0,3],[2,0]] ],
"Y":[ [[0,3],[2,0]], [[0,0],[1.1,1.1]] ],
"Z":[ [[0,0],[2,0],[0,3],[2,3]] ],

"a":[ [[0,1],[2,1],[2,3],[0,3],[0,2],[2,2]] ],
"b":[ [[0,0],[0,3],[2,3],[2,1],[0,1]] ],
"c":[ [[2,1],[0,1],[0,3],[2,3]] ],
"d":[ [[2,0],[2,3],[0,3],[0,1],[2,1]] ],
"e":[ [[2,3],[0,3],[0,1],[2,1],[2,2],[0,2]] ],
"f":[ [[1,3],[1,0],[2,0]], [[0,2],[2,2]] ],
"g":[ [[2,3],[0,3],[0,2],[2,2],[2,4],[0,4]] ],
"h":[ [[0,0],[0,3]], [[0,1],[2,1],[2,3]] ],
"i":[ [[1,3],[1,1]] ],
"j":[ [[0,4],[1,4],[1,1]] ],
"k":[ [[0,3],[0,0]], [[0,2],[2,1]], [[0.8, 1.6],[2, 3]] ],
"l":[ [[2,3],[1,3],[1,0]] ],
"m":[ [[0,3],[0,1],[1,2],[2,1],[2,3]] ],
"n":[ [[0,3],[0,1],[2,3],[2,1]] ],
"Ñ":[ [[0,3],[0,1],[2,3],[2,1],[1,1]] ],
"o":[ [[0,1],[2,1],[2,3],[0,3],[0,1]] ],
"p":[ [[0,4],[0,1],[2,1],[2,3],[0,3]] ],
"q":[ [[2,4],[2,1],[0,1],[0,3],[2,3]] ],
"r":[ [[1,3],[1,1],[2,1]] ],
"s":[ [[2,1],[0,1],[0,2],[2,2],[2,3],[0,3]] ],
"t":[ [[2,3],[1,3],[1,0]], [[0,1],[2,1]] ],
"u":[ [[0,1],[0,3],[2,3],[2,1]] ],
"v":[ [[0,1],[1,3],[2,1]] ],
"w":[ [[0,1],[0,3],[1,2],[2,3],[2,1]] ],
"x":[ [[0,1],[2,3]], [[0,3],[2,1]] ],
"y":[ [[0,3],[2,1]], [[0,1],[1,2]] ],
"z":[ [[0,1],[2,1],[0,3],[2,3]] ],

"á":[ [[0,1],[2,1],[2,3],[0,3],[0,2],[2,2]], [[1,0.4],[2,0]] ],
"é":[ [[2,3],[0,3],[0,1],[2,1],[2,2],[0,2]], [[1,0.4],[2,0]] ],
"í":[ [[1,3],[1,1]], [[1,0.4],[2,0]] ],
"ó":[ [[0,1],[2,1],[2,3],[0,3],[0,1]], [[1,0.4],[2,0]] ],
"ú":[ [[0,1],[0,3],[2,3],[2,1]], [[1,0.4],[2,0]] ],
"ü":[ [[0,1],[0,3],[2,3],[2,1]], [[0,0],[0,0.4]], [[2,0],[2,0.4]] ],
"ç":[ [[2,1],[0,1],[0,3],[2,3]], [[1,3],[1,3.4],[1.6, 3.4],[1.6, 4],[1, 4]] ],
"ç":[ [[2,0],[0,0],[0,3],[2,3]], [[1,3],[1,3.4],[1.6, 3.4],[1.6, 4],[1, 4]] ],

"symbols":[
  ["=", "%", "<", ">", ":", ",", ";", ".", "[", "]", "(", ")", "+", "-", "*", "?", "!", "\"", "'", "/", "\\", "$", " "],
  ["equal", "percentage", "lower", "greater", "colon", "comma", "semicolon", "period", "openbracket", "closebracket", "openparenthesis", "closeparenthesis", "plus", "minus", "asterisk", "question", "exclamation", "quote", "singlequote", "slash", "backslash", "money", "space"]
],

"equal":[ [[0,2],[2,2]], [[0,3],[2,3]] ],
"percentage":[ [[0,3],[2,0]], [[0,0.5], [0,1]], [[2,2.5], [2,2]] ],
"lower":[ [[2,0],[0,1.5],[2,3]] ],
"greater":[ [[0,0],[2,1.5],[0,3]] ],
"colon":[ [[0,1.4],[0,1.6]], [[0,2.4],[0,2.6]] ],
"comma":[ [[0,2.4],[-0.2,3]] ],
"semicolon":[ [[0,1.4],[0,1.6]], [[0,2.4],[-0.2,3]] ],
"period":[ [[0,2.8],[0,3]] ],
"openbracket":[ [[1.4,3],[1,3],[1,0],[1.4,0]] ],
"closebracket":[ [[0.6,3],[1,3],[1,0],[0.6,0]] ],
"openparenthesis":[ [[1.4,3],[0.8,1.5],[1.4,0]] ],
"closeparenthesis":[ [[1.4,3],[2,1.5],[1.4,0]] ],
"plus":[ [[0,2],[2,2]], [[1,1],[1,3]] ],
"minus":[ [[0,2],[2,2]] ],
"asterisk":[ [[0,2],[2,2]], [[1,1],[1,3]], [[0.4,1.4],[1.6,2.6]], [[1.6,1.4],[0.4,2.6]] ],
"question":[ [[1,3],[1,2.4]], [[1,2],[1,1.4],[2,1.4],[2,0],[0,0],[0,1]] ],
"exclamation":[ [[1,3],[1,2.4]], [[1,2],[1,0]] ],
"quote":[ [[0.6,0],[0.6,1]], [[1.4,0],[1.4,1]] ],
"singlequote":[ [[0.6,0],[0.6,1]] ],
"slash":[ [[0,3],[2,0]] ],
"backslash":[ [[0,0],[2,3]]],
"money":[ [[2,0],[0,0],[0,1],[2,1],[2,3],[0,3]], [[1,-0.5],[1,3.5]] ],
"space":[]
}
 
j ecris

ma variable ={
"0":[[[0,0],[2,0],[2,3],[0,3],[0,0],[2,3]]],
"1":[[[0,2],[2,0],[2,3]]],
"2":[[[0,0],[2,0],[2,1],[0,3],[2,3]]],
"3":[[[0,0],[2,0],[0,1],[2,1],[2,3],[0,3]]],
"4":[[[0,0],[0,2],[2,2],[2,0]],[[2,2],[2,3]]],
"5":[[[2,0],[0,0],[0,1],[2,1],[2,3],[0,3]]],
"6":[[[2,0],[0,0],[0,3],[2,3],[2,1],[0,1]]],
"7":[[[0,0],[2,0],[0,3]],[[0,1],[2,1]]],
"8":[[[0,0],[2,0],[2,3],[0,3],[0,0]],[[0,1],[2,1]]],
"9":[[[2,1],[0,1],[0,0],[2,0],[2,1],[0,3]]],

"A":[ [[0,3],[0,0],[2,0],[2,1],[0,1]], [[2,1],[2,3]] ],
"B":[ [[0,1],[2,1],[2,3],[0,3],[0,0],[1,0],[1,1]] ],
"C":[ [[2,0],[0,0],[0,3],[2,3]] ],
"D":[ [[0,0],[1,0],[2,1],[2,3], [0,3],[0,0]] ],
"E":[ [[2,0],[0,0],[0,3],[2,3]], [[0,1],[2,1]] ],
"F":[ [[2,0],[0,0],[0,3]], [[0,1],[2,1]] ],
"G":[ [[2,0],[0,0],[0,3],[2,3],[2,2],[1,2]] ],
"H":[ [[0,3],[0,0]], [[2,3],[2,0]], [[0,1],[2,1]] ],
"I":[ [[1,3],[1,0]] ],
"J":[ [[0,0],[2,0],[2,3],[0,3],[0,2]] ],
"K":[ [[0,3],[0,0]], [[0,1],[2,0]], [[0.6, 0.6],[2, 3]] ],
"L":[ [[2,3],[0,3],[0,0]] ],
"M":[ [[0,3],[0,0],[1,1],[2,0],[2,3]] ],
"N":[ [[0,3],[0,0],[2,3],[2,0]] ],
"Ñ":[ [[0,3],[0,0],[2,3],[2,0],[1,1],[1,0]] ],
"O":[ [[0,0],[2,0],[2,3],[0,3],[0,0]] ],
"P":[ [[0,3],[0,0],[2,0],[2,2],[0,2]] ],
"Q":[ [[2,3],[0,3],[0,0],[2,0],[2,3],[1,2]] ],
"R":[ [[0,3],[0,0],[2,0],[2,2],[0,2]], [[1,2],[2,3]] ],
"S":[ [[2,0],[0,0],[0,1],[2,1],[2,3],[0,3]] ],
"T":[ [[0,0],[2,0]], [[1,0],[1,3]] ],
"U":[ [[0,0],[0,3],[2,3],[2,0]] ],
"V":[ [[0,0],[1,3],[2,0]] ],
"W":[ [[0,0],[0,3],[1,2],[2,3],[2,0]] ],
"X":[ [[0,0],[2,3]], [[0,3],[2,0]] ],
"Y":[ [[0,3],[2,0]], [[0,0],[1.1,1.1]] ],
"Z":[ [[0,0],[2,0],[0,3],[2,3]] ],

"a":[ [[0,1],[2,1],[2,3],[0,3],[0,2],[2,2]] ],
"b":[ [[0,0],[0,3],[2,3],[2,1],[0,1]] ],
"c":[ [[2,1],[0,1],[0,3],[2,3]] ],
"d":[ [[2,0],[2,3],[0,3],[0,1],[2,1]] ],
"e":[ [[2,3],[0,3],[0,1],[2,1],[2,2],[0,2]] ],
"f":[ [[1,3],[1,0],[2,0]], [[0,2],[2,2]] ],
"g":[ [[2,3],[0,3],[0,2],[2,2],[2,4],[0,4]] ],
"h":[ [[0,0],[0,3]], [[0,1],[2,1],[2,3]] ],
"i":[ [[1,3],[1,1]] ],
"j":[ [[0,4],[1,4],[1,1]] ],
"k":[ [[0,3],[0,0]], [[0,2],[2,1]], [[0.8, 1.6],[2, 3]] ],
"l":[ [[2,3],[1,3],[1,0]] ],
"m":[ [[0,3],[0,1],[1,2],[2,1],[2,3]] ],
"n":[ [[0,3],[0,1],[2,3],[2,1]] ],
"Ñ":[ [[0,3],[0,1],[2,3],[2,1],[1,1]] ],
"o":[ [[0,1],[2,1],[2,3],[0,3],[0,1]] ],
"p":[ [[0,4],[0,1],[2,1],[2,3],[0,3]] ],
"q":[ [[2,4],[2,1],[0,1],[0,3],[2,3]] ],
"r":[ [[1,3],[1,1],[2,1]] ],
"s":[ [[2,1],[0,1],[0,2],[2,2],[2,3],[0,3]] ],
"t":[ [[2,3],[1,3],[1,0]], [[0,1],[2,1]] ],
"u":[ [[0,1],[0,3],[2,3],[2,1]] ],
"v":[ [[0,1],[1,3],[2,1]] ],
"w":[ [[0,1],[0,3],[1,2],[2,3],[2,1]] ],
"x":[ [[0,1],[2,3]], [[0,3],[2,1]] ],
"y":[ [[0,3],[2,1]], [[0,1],[1,2]] ],
"z":[ [[0,1],[2,1],[0,3],[2,3]] ],

"á":[ [[0,1],[2,1],[2,3],[0,3],[0,2],[2,2]], [[1,0.4],[2,0]] ],
"é":[ [[2,3],[0,3],[0,1],[2,1],[2,2],[0,2]], [[1,0.4],[2,0]] ],
"í":[ [[1,3],[1,1]], [[1,0.4],[2,0]] ],
"ó":[ [[0,1],[2,1],[2,3],[0,3],[0,1]], [[1,0.4],[2,0]] ],
"ú":[ [[0,1],[0,3],[2,3],[2,1]], [[1,0.4],[2,0]] ],
"ü":[ [[0,1],[0,3],[2,3],[2,1]], [[0,0],[0,0.4]], [[2,0],[2,0.4]] ],
"ç":[ [[2,1],[0,1],[0,3],[2,3]], [[1,3],[1,3.4],[1.6, 3.4],[1.6, 4],[1, 4]] ],
"ç":[ [[2,0],[0,0],[0,3],[2,3]], [[1,3],[1,3.4],[1.6, 3.4],[1.6, 4],[1, 4]] ],

"symbols":[
  ["=", "%", "<", ">", ":", ",", ";", ".", "[", "]", "(", ")", "+", "-", "*", "?", "!", "\"", "'", "/", "\\", "$", " "],
  ["equal", "percentage", "lower", "greater", "colon", "comma", "semicolon", "period", "openbracket", "closebracket", "openparenthesis", "closeparenthesis", "plus", "minus", "asterisk", "question", "exclamation", "quote", "singlequote", "slash", "backslash", "money", "space"]
],

"equal":[ [[0,2],[2,2]], [[0,3],[2,3]] ],
"percentage":[ [[0,3],[2,0]], [[0,0.5], [0,1]], [[2,2.5], [2,2]] ],
"lower":[ [[2,0],[0,1.5],[2,3]] ],
"greater":[ [[0,0],[2,1.5],[0,3]] ],
"colon":[ [[0,1.4],[0,1.6]], [[0,2.4],[0,2.6]] ],
"comma":[ [[0,2.4],[-0.2,3]] ],
"semicolon":[ [[0,1.4],[0,1.6]], [[0,2.4],[-0.2,3]] ],
"period":[ [[0,2.8],[0,3]] ],
"openbracket":[ [[1.4,3],[1,3],[1,0],[1.4,0]] ],
"closebracket":[ [[0.6,3],[1,3],[1,0],[0.6,0]] ],
"openparenthesis":[ [[1.4,3],[0.8,1.5],[1.4,0]] ],
"closeparenthesis":[ [[1.4,3],[2,1.5],[1.4,0]] ],
"plus":[ [[0,2],[2,2]], [[1,1],[1,3]] ],
"minus":[ [[0,2],[2,2]] ],
"asterisk":[ [[0,2],[2,2]], [[1,1],[1,3]], [[0.4,1.4],[1.6,2.6]], [[1.6,1.4],[0.4,2.6]] ],
"question":[ [[1,3],[1,2.4]], [[1,2],[1,1.4],[2,1.4],[2,0],[0,0],[0,1]] ],
"exclamation":[ [[1,3],[1,2.4]], [[1,2],[1,0]] ],
"quote":[ [[0.6,0],[0.6,1]], [[1.4,0],[1.4,1]] ],
"singlequote":[ [[0.6,0],[0.6,1]] ],
"slash":[ [[0,3],[2,0]] ],
"backslash":[ [[0,0],[2,3]]],
"money":[ [[2,0],[0,0],[0,1],[2,1],[2,3],[0,3]], [[1,-0.5],[1,3.5]] ],
"space":[]
}
 

mais bon le JSON.parse(mavariable) ne marche pas pourtant elle est bien identique au req.responseText

#6 pierreflash

    Ceinture Marron

  • Members
  • PipPipPipPipPipPip
  • 117 messages

Posté 01 May 2013 - 11:00 AM

ca y est ai trouvé mon erreur :)
c était tout bête

JSON.parse, fonction (JavaScript) Convertit une chaîne JSON (JavaScript Object Notation) en objet.
donc pas besoin faire parse( mavariable ) puisque c est déjà un objet contrairement au req.responseText qui lui est chaine de caractere

en tout cas merci pour vos réponses

les erreurs c est comme les clés on les cherche jamais au bon endroit -_-

#7 pierreflash

    Ceinture Marron

  • Members
  • PipPipPipPipPipPip
  • 117 messages

Posté 04 May 2013 - 12:56 PM

le résultat quand même sur la bannière
http://websitecreation.canalblog.com/



1 utilisateur(s) li(sen)t ce sujet

0 membre(s), 1 invité(s), 0 utilisateur(s) anonyme(s)