|
Parcours d'un Json "compacté" |
Iniciado por GP, 29,may. 2017 18:35 - 7 respuestas |
| |
| | | |
|
| |
Miembro registrado 8 mensajes Popularité : +1 (1 vote) |
|
Publicado el 29,mayo 2017 - 18:35 |
Bonjour,
J'ai un souci et je ne sais plus trop où chercher. Je récupère via l'API de Neo4J (base de graphes) un json répondant à une requite sur la base. Jusque là tout va bien, je récupère un json compacté, et après test sur un éditeur json en ligne j'arrive à le décompater (le render lisible avec retour chariot) sans erreur. Le souci est sous webdev. J'essaie d'utiliser la function jsonversvariant pour pouvoir l'exploier + facilement (c'est ce qu'il faut faire de ce que j'ai compris) mais le retour est 0. Est-ce-parceque le fichier est au format compacté ? (je ne pense pas pouvoir y faire grand chose) ou ais-je oublié quelque chose ? D'avance merci de votre aide.
Mon code avec en commentaire le résultat quand j'affiche quelque chose : NeoRequete est un restRequête NeoReponse est un restRéponse v est un Variant
sObjet est une chaîne = [ { "query" : "match (n:Application)-[r]->(m:BusinessLine) return n,r,m limit 15", "params" : { } } ]//ici c'est un petit json qui contient la requête que j'envoie au serveur Neo4J,
NeoRequete..URL="http://monserveur:7474/db/data/cypher" NeoRequete..ContentType=typeMimeJSON NeoRequete..Méthode=httpPost NeoRequete..Utilisateur="login" NeoRequete..MotDePasse="motdepasse" NeoRequete..Contenu=sObjet NeoReponse=RESTEnvoie(NeoRequete) // ici je reçois le résultat de ma requête
SI ErreurDétectée ALORS Erreur(ErreurInfo(errComplet)) SINON Info(NeoReponse..Contenu)//Là tout va bien, le json est affiché dans la fenêtre d'info en mode "compact" Info(NeoReponse.CodeEtat)//code retour http 200 v=JSONVersVariant(NeoReponse..Contenu) Info(v) //affiche 0 POUR TOUT x DE v..Membre Trace("Le membre " + x..Nom + " a la valeur " + x..Valeur) //tombe en erreur en disant que le tableau est vide (forcément...) FIN FIN
Le json que je reçois est "compact" (minimized), voici le début (il est un peu gros pourmettre ici mais si nécessaire je peux le faire) : { "columns" : [ "n", "r", "m" ], "data" : [ [ { "metadata" : { "id" : 4927, "labels" : [ "Application" ] }, "data" : { "name" : "NetIQ" }, "paged_traverse" : "http://monserveur:7474/db/data/node/4927/paged/traverse/{returnType}{…}", "outgoing_relationships" : "http://monserveur:7474/db/data/node/4927/relationships/out", "outgoing_typed_relationships" : "http://monserveur:7474/db/data/node/4927/relationships/out/{-list|&|types}", "labels" : "http://monserveur:7474/db/data/node/4927/labels", "create_relationship" : "http://monserveur:7474/db/data/node/4927/relationships", "traverse" : "http://monserveur:7474/db/data/node/4927/traverse/{returnType}", "extensions" : { }, "all_relationships" : "http://monserveur:7474/db/data/node/4927/relationships/all", "all_typed_relationships" : "http://monserveur:7474/db/data/node/4927/relationships/all/{-list|&|types}", "property" : "http://monserveur:7474/db/data/node/4927/properties/{key}", "self" : "http://monserveur:7474/db/data/node/4927", "incoming_relationships" : "http://monserveur:7474/db/data/node/4927/relationships/in", "properties" : "http://monserveur:7474/db/data/node/4927/properties", "incoming_typed_relationships" : "http://monserveur:7474/db/data/node/4927/relationships/in/{-list|&|types}" }, { "extensions" : { }, "metadata" : { "id" : 17221, "type" : "IN" }, "data" : { }, "property" : "http://monserveur:7474/db/data/relationship/17221/properties/{key}", "start" : "http://monserveur:7474/db/data/node/4927", "self" : "http://monserveur:7474/db/data/relationship/17221", "end" : "http://monserveur:7474/db/data/node/18680", "type" : "IN", "properties" : "http://monserveur:7474/db/data/relationship/17221/properties" }, { "metadata" : { "id" : 18680, "labels" : [ "BusinessLine" ] }, "data" : { ... |
| |
| |
| | | |
|
| | |
| |
Miembro registrado 2.572 mensajes Popularité : +222 (260 votes) |
|
Publicado el 29,mayo 2017 - 19:10 |
Bonsoir,
Peut-on avoir la totalité di json pour voir s'il on arrive à le lire ?
-- Cordialement,
Philippe SAINT-BERTIN Géode Informatique |
| |
| |
| | | |
|
| | |
| |
Miembro registrado 8 mensajes Popularité : +1 (1 vote) |
|
Publicado el 30,mayo 2017 - 13:09 |
Bonjour,
Merci. Finalement nous avons trouvé le souci, c'était dû à un manque de comprehension du type variant (la doc est basée sur des exemples trop simple je trouve) et de la structure du json renvoyé. Donc aucun problème pour connecter webdev à Neo4j Neo4j génère un json avec plusieurs tableaux sur plusieurs niveaux, il faut bien le comprendre pour pouvoir le parcourir.
pour référence pour ceux qui pourraient butter avec neo4j, voici un bout de code qui marche pour nous :
NeoRequete est un restRequête NeoReponse est un restRéponse
sObjet est une chaîne = [ { "query" : "match (n:Application)-[r]->(m:BusinessLine) RETURN n,r,m limit 15", //à remplacer par votre requite neo4j "params" : { } } ]
NeoRequete..URL="http: NeoRequete..ContentType=typeMimeJSON NeoRequete..Méthode=httpPost NeoRequete..Utilisateur="login" NeoRequete..MotDePasse="motdepasse" NeoRequete..Contenu=sObjet NeoReponse=RESTEnvoie(NeoRequete) vjs est un Variant = JSONVersVariant(NeoReponse..Contenu)
Info(vjs.data[2][1].data.name)
POUR TOUT x de vjs.data[2][1] Trace("Le membre " + x..Nom + " a la valeur " + x..Valeur) FIN |
| |
| |
| | | |
|
| | |
| |
Miembro registrado 8 mensajes Popularité : +1 (1 vote) |
|
Publicado el 30,mayo 2017 - 14:14 |
contrairement au commentaire que j'ai oublié d'enlever, le trace à la fin renvoie bien les elements. |
| |
| |
| | | |
|
| | |
| |
Publicado el 23,junio 2017 - 11:12 |
Bonjour GP,
Moi je voudrais parcourir un tableau qui est continu dans un json, es ce que vous pouvez me donner une solution svp |
| |
| |
| | | |
|
| | |
| |
Miembro registrado 8 mensajes Popularité : +1 (1 vote) |
|
Publicado el 23,junio 2017 - 14:43 |
Bonjour Cheikhou, Pouvez vous copier un extrait du json ? Merci. |
| |
| |
| | | |
|
| | |
| |
Publicado el 27,septiembre 2017 - 20:24 |
Bonjour,
Avez-vous essayé de vous connecter à Couchbase server (et Couchbase mobile) ?
Cette base présente des caractéristiques intéressantes.
Cordialement
PhilDet |
| |
| |
| | | |
|
| | |
| |
Publicado el 22,octubre 2023 - 20:00 |
Bonjour Comment est-ce que vous avez finalement résolu ce problème dans un contexte NEO4J? |
| |
| |
| | | |
|
| | | | |
| | |
|