GraphQL avec Apollo

GraphQL avec Apollo


Installation de docker

Si vous souhaitez utiliser Docker, je vous invite à cloner le projet github.

Une fois cloné vous pouvez lancer :

docker-compose up -d

et vous devez ajouter la ligne suivante dans votre /etc/hosts :

127.0.0.1 apollo.local

Si vous travaillez dans le container docker, les commandes suivantes doivent être lancées dans la machine docker :

docker-compose exec node sh

Initialisation de l'environnement Node

On commence par configurer le gestionnaire de package yarn :

yarn init

Suivre les instructions en laissant comme entry point le fichier index.js.

Il faut ensuite installer l'ensemble des packages suivant pour l'utiliser babel :

yarn add --dev babel-cli babel-preset-env babel-preset-es2015 babel-preset-stage-0

Puis vous devez installer les packages apollo-server-express, graphql et express :

yarn add apollo-server-express graphql express

Une fois terminé, vous devez ajouter le script pour start le projet. Dans le fichier package.json il faut ajouter :

"scripts": { "start": "babel-node index.js" }

Mise en place du serveur

Il nous reste à mettre en place le serveur express qui permettra de lancer le GraphQL.

Ajouter le code suivant dans le fichier index.js :

import express from 'express'; import bodyParser from 'body-parser'; import { graphqlExpress } from 'apollo-server-express'; const PORT = 3000; const app = express(); app.get('/', function (req, res) { res.send('Hello World!') }) app.listen(PORT);

Si tout est ok, vous devriez, en faisant un yarn start avoir le résultat suivant sur l'url 127.0.0.1:3000

Hello Word

Retrouvez le code directement ici

Auteur(s)

Jonathan Jalouzot

Jonathan Jalouzot

Lead développeur au @lemondefr, mes technologies sont le symfony depuis 2009, le nodejs, l'angularjs, rabbitMq etc ... J'adore les médias et aimerai continuer dans ce secteur plein de surprise. Vous pouvez me retrouver sur les réseaux sociaux: Twitter: @captainjojo42 Instagram: @captainjojo42 Linkedin: https://fr.linkedin.com/in/jonathanjalouzot Github: https://github.com/captainjojo

Voir le profil

Vous souhaitez en savoir plus sur le sujet ?
Organisons un échange !

Notre équipe d'experts répond à toutes vos questions.

Nous contacter

Découvrez nos autres contenus dans le même thème