Platform
Base de données en temps réel
12 min
comment utiliser parse server live query introduction les requêtes en direct sont destinées à être utilisées dans des applications réactives en temps réel , où l'utilisation du paradigme de requête traditionnel pourrait causer plusieurs problèmes, comme un temps de réponse accru et une utilisation élevée du réseau et du serveur les requêtes en direct doivent être utilisées dans les cas où vous devez mettre à jour continuellement une page avec des données fraîches provenant de la base de données, ce qui se produit souvent dans (mais n'est pas limité à) des jeux en ligne, des clients de messagerie et des listes de tâches partagées cette section explique comment utiliser live query de back4app dans un environnement javascript via back4app pour ce tutoriel, en exemple, vous allez créer une liste de tâches en ligne en utilisant des requêtes en direct, comme montré ci dessous voir la liste complète des todo online list projet à https //github com/igor ribeiiro/onlinetodolist voir plus sur le sdk parse à https //parseplatform org/parse sdk js/api/4 3 1/ et https //docs parseplatform org/js/guide/#live queries prérequis pour compléter ce tutoriel, vous aurez besoin de une application javascript de base connectée à back4app ou le https //github com/igor ribeiiro/onlinetodolist remarque vous pouvez utiliser l'application créée dans notre https //www back4app com/docs/javascript/parse javascript sdk ou le https //github com/igor ribeiiro/onlinetodolist connaissances suffisantes en https //docs parseplatform org/js/guide/#queries (mais pas obligatoire) 1 activer live query avant de commencer à coder, il est nécessaire d'avoir une classe dans votre base de données pour activer la requête en direct pour ce faire, trouvez simplement votre application sur le https //www back4app com/ , et cliquez sur tableau de bord tableau de bord > créer une classe créer une classe , comme montré ci dessous remarque ici, cette classe sera appelée message message maintenant, pour activer la fonctionnalité de requête en direct, connectez vous à votre compte sur https //www back4app com/ , trouvez votre application, et cliquez sur paramètres de l'application paramètres de l'application > paramètres du serveur paramètres du serveur recherchez le bloc “url du serveur et requête en direct” et cliquez sur paramètres paramètres le bloc “url du serveur et requête en direct” ressemble à ceci ensuite, vous arriverez sur une page comme celle ci dessous sur cette page, vous devrez cocher l' activez votre sous domaine back4app activez votre sous domaine back4app option, l' activez live query activez live query option, et toutes les classes sur lesquelles vous souhaitez que live query soit activé, comme montré ci dessous il est nécessaire d'activer votre sous domaine pour utiliser les live queries car cela fonctionnera comme le serveur en direct 2 abonnez vous à votre requête pour commencer à utiliser les livequeries, vous devez d'abord créer un livequeryclient livequeryclient qui gérera les connexions websocket pour vous pour ce faire, vous devrez fournir l'id de l'application, sa clé javascript à des fins de vérification, et également une url de serveur qui devrait être le domaine avec lequel vous avez effectué la configuration à l'étape précédente voici le code pour livequeryclient livequeryclient livequeryclient js 1 var client = new parse livequeryclient({ 2 applicationid 'your app id here', 3 serverurl 'wss\ //' + 'your domain here', // example 'wss\ //livequerytutorial back4app io' 4 javascriptkey 'your javascript key here' 5 }); 6 client open(); après avoir suivi les étapes mentionnées ci dessus, vous devez créer une requête pour le type d'objet auquel vous souhaitez vous abonner une souscription est un emetteur d'événements, qui déclenchera des événements lorsque des modifications se produisent sur un objet qui satisfait votre requête dans cet exemple, vous allez effectuer une requête de base et vous abonner à toutes les modifications apportées à the todo todo objet voir plus sur les requêtes à https //docs parseplatform org/js/guide/#queries voici le code pour querysubscribe querysubscribe querysubscribe js 1 var query = new parse query('todo'); 2 query ascending('createdat') limit(5); 3 var subscription = client subscribe(query); 3 écouter les événements avec la configuration prête, il est nécessaire de coder ce que votre application fera lorsque un événement se déclenche dans cette partie, nous allons montrer comment écouter ces événements dans un exemple pratique l' exemple de liste en ligne todo servira de guide pour votre projet car il y a peu ou pas de code de base utilisé les deux principaux événements que vous allez utiliser ici sont l' create create événement et l' delete delete événement la liste complète des événements peut être trouvée http //docs parseplatform org/js/guide/#event handling 3 1 l'événement de création l' createevent createevent est déclenché chaque fois qu'un parseobject parseobject est créé et remplit les contraintes de requête que vous avez insérées cet événement retourne l'objet créé dans l'exemple de la todo online list , le tableau des activités est stocké dans la variable this todos this todos et nous ajouterons les nouveaux objets de notre base de données dans ce tableau, lorsqu'un événement de création se produit le code pour createevent createevent est montré ci dessous createevent js 1 subscription on('create', todo => { 2 this todos add(todo); 3 console log('on create event'); 4 }); 3 2 l'événement de suppression chaque fois qu'un parseobject parseobject existant qui remplit vos contraintes de requête est supprimé de la base de données, vous recevrez cet événement, qui retourne l'objet supprimé dans l'exemple de la todo online list , vous devez supprimer un objet de la liste chaque fois qu'il est supprimé de la base de données recherchez les id correspondants entre le serveur et le code, pour identifier les objets supprimés le code pour deleteevent deleteevent est le suivant deleteevent js 1 subscription on('delete', todo => { 2 this todos foreach(t => { 3 if (t id === todo id) { 4 console log('on delete event'); 5 this todos delete(t); 6 } 7 }); 8 }); c'est fait ! à ce stade, vous savez comment utiliser les requêtes en direct pour créer des applications réactives en temps réel vous savez également comment effectuer la configuration correcte des requêtes en direct en utilisant back4app et pouvez commencer à l'implémenter dans votre application