BT

Diffuser les Connaissances et l'Innovation dans le Développement Logiciel d'Entreprise

Contribuez

Sujets

Sélectionner votre région

Accueil InfoQ Actualités Obtenir des Données JSON avec Netflix Falcor

Obtenir des Données JSON avec Netflix Falcor

Favoris

Netflix a ouvert le code source de Falcor, une bibliothèque JavaScript offrant un modèle et un mécanisme asynchrone pour récupérer les données JSON à partir de sources multiples.

Netflix utilise Falcor pour peupler l'interface utilisateur de leur application Web avec des données JSON. Toutes les données back-end provenant d'un cache mémoire ou de plusieurs bases de données sont modélisées par un seul objet JSON virtuel. Il est appelé « virtuel » car du point de vue client, les données semblent être dans la mémoire, même si elles peuvent effectivement résider sur des bases de données locales ou distantes.

Les données sont mises à disposition à travers un graphe JSON, en utilisant l’interface DataSource ayant les opérations asynchrones suivantes : get, set et call. Le client peut parcourir le graphe en utilisant des chemins similaires à JavaScript en accédant directement aux données JSON. A des fins de démonstration, nous allons examiner cet objet JSON minimal :

 

    { "greeting": "Hello World" }

 

Si cet objet est stocké dans le fichier "model.json", y accéder se traduit comme suit :

 

    <script src="https://netflix.github.io/falcor/build/falcor.browser.js"></script>
    <script>
      var model = new falcor.Model({source: new falcor.HttpDataSource('/model.json') });

      // retrieve the "greeting" key from the root of the Virtual JSON resource
      model.
        get("greeting").
        then(function(response) {
          document.write(response.json.greeting);
        });
    </script>

 

Falcor comprend un routeur qui cache les entrepôts de données actuelles et qui dirige les appels vers les services back-end responsables et appropriés pour récupérer les données. Aussi, lorsque les données sont récupérées, elles sont mises en cache pour éviter les allers-retours à la base de données. Falcor peut également faire des traitements par lots, avec un seul appel sur le réseau, et ne délivre pas de demandes de base de données en double s’il en existe déjà une dans le processus.

Netflix a mis a disposition Falcor sur GitHub, et demande le support de la communauté pour trouver et corriger les bugs ainsi que l'intégration avec les différents frameworks MVC.

Evaluer cet article

Pertinence
Style

Contenu Éducatif

Bonjour étranger!

Vous devez créer un compte InfoQ ou cliquez sur pour déposer des commentaires. Mais il y a bien d'autres avantages à s'enregistrer.

Tirez le meilleur d'InfoQ

Html autorisé: a,b,br,blockquote,i,li,pre,u,ul,p

Commentaires de la Communauté

Html autorisé: a,b,br,blockquote,i,li,pre,u,ul,p

Html autorisé: a,b,br,blockquote,i,li,pre,u,ul,p

BT