Comment déployer une application Node.js ?

how_to_deploy_nodejs_app

Dans cet article, nous allons expliquer comment déployer une application Node JS. Nous parlerons des avantages et des inconvénients de Node, et des options de déploiement – y compris IaaS, PaaS et BaaS. Enfin, nous allons déployer une application Node sur Back4app.

Qu’est-ce que Node.js ?

Node.js est un moteur d’exécution JavaScript open-source et multiplateforme basé sur le moteur JavaScript V8 de Chrome. Node a pour but de permettre aux développeurs JavaScript de passer à la pile complète en leur permettant de coder des opérations côté serveur. Ses cas d’utilisation comprennent les scripts côté serveur, les applications en temps réel, les applications web en continu, les applications à page unique (SPA), les outils de collaboration et les jeux web.

Node possède une architecture événementielle capable d’effectuer des entrées/sorties asynchrones. Il est extrêmement rapide, grâce à sa capacité à compiler JavaScript en code machine natif. Il peut gérer un nombre considérable de connexions actives et permet aux développeurs de créer facilement des applications évolutives et performantes.

La technologie a été présentée pour la première fois en 2009 par son créateur Ryan Dahl lors de la conférence européenne annuelle JSConf. Elle est immédiatement devenue l’un des logiciels les plus intéressants de l’écosystème JavaScript.

La popularité de Node a atteint son apogée en 2017 et reste élevée. C’est l’un des outils de développement les plus populaires, utilisé par de nombreuses entreprises multimillionnaires comme IBM, LinkedIn, Microsoft, Netflix, etc. Sa simplicité et sa capacité à évoluer en font un outil adapté à toutes les tailles d’entreprises — y compris les startups.

Dans les deux sections suivantes, nous nous pencherons sur les avantages et les inconvénients de Node.

Avantages de Node.js

Haute performance

Comme indiqué dans l’introduction, Node est alimenté par le moteur JavaScript haute performance de Google. V8 peut compiler et exécuter JavaScript à une vitesse fulgurante, principalement parce qu’il compile JavaScript en code machine natif.

Node utilise également une boucle d’événements qui lui permet d’effectuer des opérations d’E/S non bloquantes, bien que JavaScript soit un langage de programmation à un seul fil. Cela en fait l’une des options les plus rapides du marché.

Évolutivité

L’un des principaux avantages de Node.js est sa capacité à évoluer. Les applications Node peuvent évoluer horizontalement et verticalement. La mise à l’échelle horizontale s’effectue en ajoutant des nœuds supplémentaires à un système existant, tandis que la mise à l’échelle verticale consiste à ajouter des ressources supplémentaires à un nœud spécifique. Les grandes options de mise à l’échelle de la plateforme la rendent appropriée pour les startups ainsi que pour les grandes entreprises avec des dizaines de millions d’utilisateurs quotidiens comme LinkedIn, Netflix et PayPal.

Node est également bien adapté à l’architecture microservices, permettant aux développeurs de créer de petits composants qui s’intègrent dans un pipeline de livraison continue et qui peuvent facilement évoluer à la demande.

Facile à apprendre

Le fait que Node soit basé sur JavaScript le rend extrêmement facile à apprendre pour les développeurs qui connaissent déjà les bases de JavaScript. La courbe d’apprentissage n’est pas très prononcée et peut être maîtrisée en quelques semaines seulement. La simplicité de Node en fait un outil idéal pour tous les types de projets.

Une mise sur le marché plus rapide

Le temps de mise sur le marché est l’un des critères essentiels pour de nombreuses équipes de développement. Tout le monde veut mettre son produit sur le marché le plus rapidement possible et Node vous permet de le faire.

La simplicité de Node et le grand nombre de paquets npm réduisent considérablement le temps de mise sur le marché. Il existe un grand nombre de projets libres sur GitHub et d’autres plateformes qui peuvent être utilisés comme modèles pour mettre en œuvre votre projet le plus rapidement possible.

Un outil qui a fait ses preuves

Node est un outil mature et éprouvé qui existe depuis 2009. Sa stabilité a été testée par de grandes entreprises comme eBay, Netflix et LinkedIn, qui comptent des millions d’utilisateurs quotidiens.

En raison de ses avantages considérables, Node est inclus dans un certain nombre de piles technologiques (généralement en combinaison avec Express et une base de données NoSQL). Voici quelques-unes des piles technologiques avec Node :

  • MERN
  • MOYEN
  • DERN

Grande communauté

Node.js dispose d’une communauté forte et active de développeurs et de passionnés qui contribuent sans cesse à l’amélioration de Node. Si vous êtes bloqué par un problème ou si vous avez une question, il existe un grand nombre d’endroits où vous pouvez chercher de l’aide. En raison de la popularité de Node, il n’est pas difficile de trouver des solutions et du code déjà élaborés sur GitHub.

Un autre atout de Node.js est son gestionnaire de paquets appelé npm (Node Package Manager). Npm permet aux développeurs de pousser et d’utiliser des paquets JavaScript prêts à l’emploi au lieu de réinventer la roue. Ces paquets peuvent réduire considérablement le coût de développement et la complexité des applications. À l’heure où nous écrivons ces lignes, plus de 1,3 million de paquets sont hébergés sur npm.

Limites de Node.js

Diminution des performances pour les tâches complexes

Le plus grand inconvénient de Node.js est son incapacité à effectuer des tâches qui nécessitent des calculs lourds. De nos jours, de nombreux programmes et algorithmes nécessitent une parallélisation pour obtenir des résultats optimaux. Comme vous le savez déjà, Node.js est basé sur JavaScript, qui a été conçu pour être un langage frontal à un seul thread et ne supporte pas les threads multiples.

Avec la mise à jour 10.5, l’équipe Node.js a mis en place la prise en charge du multithreading sous la forme de worker threads. Ce module permet aux développeurs d’exploiter des threads supplémentaires à partir d’un pool de threads. Même avec les threads de travail, Node n’est toujours pas approprié pour les calculs lourds. Si les exigences de votre projet incluent des calculs complexes, des calculs lourds ou la parallélisation, vous feriez mieux d’utiliser un autre langage de programmation.

Modèle de programmation asynchrone

Node.js utilise le modèle de programmation asynchrone. C’est pourquoi il s’appuie fortement sur l’utilisation de rappels. Les callbacks sont des fonctions qui s’exécutent en arrière-plan et renvoient (à un moment donné) un résultat. En utilisant des callbacks, votre code peut devenir plus désordonné et plus difficile à déboguer. En outre, si vous imbriquez des callbacks à plusieurs niveaux, vous risquez de vous retrouver dans ce que l’on appelle “l‘enfer descallbacks.

L’enfer du callback et les autres problèmes de la programmation asynchrone peuvent être facilement évités en suivant les principes d’un code propre.

API instable

Un autre problème majeur de Node.js est l’instabilité de son interface de programmation d’applications (API). L’API de Node change fréquemment avec des modifications incompatibles avec le passé qui peuvent casser des morceaux de code. Les développeurs Node doivent donc rester attentifs aux changements et s’assurer que leur base de code est compatible avec les dernières versions de l’API Node.js.

Absence d’un système de soutien solide à la bibliothèque

Comparé à d’autres langages de programmation, JavaScript ne dispose pas d’un bon système de bibliothèque. Cela oblige de nombreux développeurs à prendre en charge diverses tâches courantes telles que le traitement d’images, l’analyse XML, le mappage objet-relationnel (ORM), la gestion de bases de données, etc.

Un registre de modules surdimensionné et immature

Node dispose d’une énorme communauté de développeurs qui produisent des milliers de modules open-source publiés sur npm. Le problème est que npm ne met en œuvre aucune vérification pour s’assurer que le code du module fonctionne et qu’il est bien écrit.

De nombreux modules ne sont plus pris en charge ou ne fonctionnent plus avec les nouvelles versions de Node et les développeurs sont alors contraints de chercher une solution de remplacement. Dans le passé, certains modules npm ont également été piratés et injectés avec des virus et des mineurs de crypto-monnaie. De ce fait, il est difficile de trouver des modules qui peuvent être utilisés dans un environnement d’entreprise.

Ne vous méprenez pas, je pense que npm est génial, mais il faut quand même être prudent quand on installe des modules au hasard.

Options de déploiement de Node.js

Il existe de multiples façons de déployer une application Node.js. D’une manière générale, nous pouvons les répartir dans les quatre groupes suivants :

  1. Hébergement conventionnel
  2. Infrastructure en tant que service (IaaS)
  3. Plate-forme en tant que service (PaaS)
  4. Backend en tant que service (BaaS)

Nous pouvons les présenter dans un diagramme pyramidal en fonction de leur niveau d’abstraction :

Modèles de déploiement en nuage

Les options de déploiement prennent en charge les couches d’abstraction suivantes :

IaaS vs PaaS vs BaaS

Examinons chacun de ces groupes. Nous passerons sur l’hébergement conventionnel car je suis sûr que vous savez comment cela fonctionne.

Services IaaS comme AWS

L’infrastructure en tant que service (IaaS) est un modèle de service d’informatique en nuage qui fournit des ressources informatiques telles que des serveurs, des réseaux, des systèmes d’exploitation et du stockage dans un environnement virtualisé. Ces serveurs en nuage sont généralement fournis à l’organisation par le biais d’API de haut niveau ou de tableaux de bord avancés, ce qui permet aux clients d’avoir un contrôle total sur l’ensemble de l’infrastructure.

L’IaaS est hautement évolutif. Il permet aux clients d’évoluer facilement à la fois verticalement et horizontalement en fonction de la demande. Les fournisseurs de services IaaS suivent généralement un modèle de paiement à l’utilisation, ce qui signifie que vous ne payez que pour les ressources que vous consommez.

L’IaaS a vu le jour au début des années 2010 et est devenu depuis le modèle d’abstraction standard pour de nombreux types de charges de travail. Même avec l’essor de nouvelles technologies comme les microservices et le serverless, l’IaaS reste l’option la plus populaire.

Contrairement au PaaS et au BaaS, l’IaaS permet le contrôle le plus bas des ressources dans le nuage. C’est donc le modèle d’informatique en nuage le plus flexible. L’inconvénient est que le client est entièrement responsable de la gestion d’aspects tels que les applications, les systèmes d’exploitation, les logiciels intermédiaires et les données, ce qui prend généralement beaucoup de temps.

Voici quelques exemples typiques d’IaaS :

  • Amazon Web Services (AWS)
  • Google Compute Engine (GCE)
  • Microsoft Azure
  • DigitalOcean
  • Linode
  • Rackspace

Services PaaS comme Heroku

La plateforme en tant que service (PaaS) est un modèle de service d’informatique en nuage qui fournit aux utilisateurs un environnement en nuage dans lequel ils peuvent développer, gérer et fournir des applications. Outre la mise à disposition de ressources informatiques, le PaaS s’accompagne d’un grand nombre d’outils prédéfinis pour le développement, la personnalisation et le test d’applications. La plupart des fournisseurs de PaaS vous permettent de rendre votre application opérationnelle en quelques clics !

Le PaaS permet aux utilisateurs de se concentrer sur leur application plutôt que de gérer l’infrastructure sous-jacente. Les fournisseurs de PaaS se chargent d’une grande partie des tâches lourdes à votre place, comme la gestion de vos serveurs, de vos systèmes d’exploitation, de vos logiciels de serveur, de vos sauvegardes, et bien d’autres choses encore.

Voici quelques-uns des avantages du PaaS :

  • Une mise sur le marché plus rapide
  • Sécurité accrue
  • Rapport coût-efficacité
  • Évolutivité
  • Haute disponibilité
  • Moins de code nécessaire

Les inconvénients du PaaS sont que vous serez très probablement dépendant des capacités du fournisseur, qu’il y a un risque d’enfermement et un manque de flexibilité et de contrôle. Toutefois, le PaaS permet aux utilisateurs de créer des applications plus rapidement et est moins lourd à gérer.

Les services PaaS comprennent

  • Heroku
  • AWS Elastic Beanstalk
  • Plate-forme d’applications DigitalOcean
  • Microsoft Azure App Service
  • La plateforme Fly (Fly.io)
  • Rendu

Services BaaS comme Back4app

Le Backend as a Service (BaaS) est une plateforme qui automatise l’aspect backend du développement et prend en charge l’infrastructure en nuage. En outre, elle offre des fonctionnalités telles que la gestion des utilisateurs, les notifications par courrier électronique, les notifications push, les fonctions de code en nuage, l’intégration des médias sociaux, le stockage de fichiers et les paiements.

Cela permet aux développeurs de se concentrer sur le cœur de métier et de construire le frontend sans se préoccuper du backend et de l’infrastructure sous-jacents. Le frontend est généralement développé via des API et des SDK spécialisés proposés par le fournisseur de BaaS. Les applications sont ainsi moins complexes et plus faciles à maintenir.

Le BaaS offre tous les avantages de l’IaaS et du PaaS tout en incluant l’abstraction du backend. Les équipes qui utilisent le BaaS réduisent considérablement les délais de mise sur le marché, les coûts d’ingénierie et le nombre d’ingénieurs nécessaires.

Le BaaS peut être utilisé pour de nombreux types de projets – y compris la réalisation d’un MVP (Minimum Viable Product), d’applications autonomes ou d’applications nécessitant un petit nombre d’intégrations et d’applications d’entreprise qui ne sont pas essentielles à la mission de l’entreprise.

Les inconvénients du BaaS sont qu’il est moins flexible que le IaaS et le PaaS, qu’il offre un niveau inférieur de contrôle et de personnalisation, et qu’il y a un risque d’enfermement pour les plateformes non open-source.

Quelques exemples de BaaS :

  • Back4app
  • AWS Amplify
  • Firebase
  • Analyser
  • Cloudkit
  • Sans fin

Processus de déploiement de Node.js

Dans cette partie de l’article, nous allons nous intéresser à Back4app et apprendre comment construire et déployer une application Node JS.

Qu’est-ce que Back4app ?

Back4app est l’une des meilleures solutions open-source de Backend as a Service (BaaS) sur le marché. Elle offre une large gamme de fonctionnalités et d’avantages à ses utilisateurs, permettant aux développeurs de créer rapidement des applications web et mobiles. En utilisant Back4app, vous pourrez vous concentrer sur votre cœur de métier sans vous soucier du backend ou de l’infrastructure sous-jacente.

La solution est livrée avec un tableau de bord riche en fonctionnalités et facile à utiliser, ainsi qu’une interface de ligne de commande (CLI). Ils fournissent également des SDK pour tous vos outils préférés comme Flutter, React Native, Node.js, Angular, Android, iOS et plus encore !

Les principales caractéristiques de Back4app sont les suivantes

  • Base de données de type tableur
  • API REST et GraphQL
  • Requêtes en direct
  • Authentification (y compris l’authentification sociale)
  • Hébergement évolutif
  • Notifications push et par e-mail

Pour plus d’informations sur les fonctionnalités de Back4app, consultez la page Fonctionnalités de Back4app.

Back4app suit un modèle de prix simple et direct qui peut convenir à une application de n’importe quelle taille. Ils offrent un plan gratuit généreux (pas de carte de crédit requise) qui est parfait pour le prototypage et le test de la plateforme. Il comprend :

  • 25k demandes
  • 250 Mo de stockage de données
  • 1 Go de transfert
  • 1 Go de stockage de fichiers

Pour plus d’informations sur les tarifs de Back4app, consultez la page Tarifs.

Introduction du projet

Nous allons coder et déployer une simple application web TODO. L’application web va supporter les opérations CRUD de base – créer, récupérer, mettre à jour et supprimer. Nous la coderons en Node.js en utilisant le framework web Express, le stockage des données sera géré par Parse, et nous utiliserons Twig comme moteur de templating.

Cliquez ici pour voir l’application déployée en action!

Prérequis :

  • Compréhension de base de Node.js
  • Compréhension de base d’Express
  • Expérience de l’utilisation d’un moteur de modélisation
  • Compréhension de base des bases de données et de ParseJS

Back4app CLI

Les étapes suivantes requièrent que vous ayez un compte Back4app. Si vous l’avez déjà, connectez-vous, sinon inscrivez-vous pour obtenir un compte gratuit.

Back4app CLI est une interface en ligne de commande qui vous permet d’interagir avec la plateforme Back4app.

Pour l’installer sur Mac/Linux, exécutez :

$ curl https://raw.githubusercontent.com/back4app/parse-cli/back4app/installer.sh | sudo /bin/bash

La commande va télécharger le dernier binaire CLI et le stocker dans /usr/local/bin/b4a.

Pour les autres systèmes d’exploitation, veuillez vous référer à la documentation officielle.

Pour utiliser l’interface de programmation, vous devez vous authentifier avec votre compte. Pour ce faire, vous devez d’abord générer une clé de compte. Naviguez vers votre tableau de bord Back4app et cliquez sur votre nom d’utilisateur (en haut à droite de l’écran), puis sur “Account Keys” :

Clés de compte Back4app

Pour ajouter une nouvelle clé de compte, entrez un nom de clé personnalisé et appuyez sur “+”. Prenez note de la clé car nous en aurons besoin à l’étape suivante :

Clés de compte Back4app

Après avoir créé la clé, retournez dans le terminal et exécutez :

$ b4a configure accountkey

Input your account key or press ENTER to generate a new one.       
NOTE: on pressing ENTER we'll try to open the url:                 
        "http://dashboard.back4app.com/classic#/wizard/account-key"
in default browser.
Account Key: <YOUR_GENERATED_ACCOUNT_KEY>
Successfully stored account key for: "<YOUR_EMAIL>".

Pour vous assurer que l’authentification a fonctionné, essayez de dresser la liste de vos applications :

$ b4a list

These are the apps you currently have access to:

Si votre compte est tout nouveau comme le mien, aucune application ne sera répertoriée.

Créer une application

Continuons à créer une application Back4app.

Exécutez :

$ b4a new

Would you like to create a new app, or add Cloud Code to an existing app?
Type "(n)ew" or "(e)xisting": n
Please choose a name for your Parse app.
Note that this name will appear on the Back4App website,
but it does not have to be the same as your mobile app's public name.
Name: nodejs-back4app
Awesome! Now it's time to set up some Cloud Code for the app: "nodejs-back4app",
Next we will create a directory to hold your Cloud Code.
Please enter the name to use for this directory,
or hit ENTER to use "nodejs-back4app" as the directory name.

Directory Name:
You can either set up a blank project or create a sample Cloud Code project
Please type "(b)lank" if you wish to setup a blank project, otherwise press ENTER: 
Successfully configured email for current project to: "<YOUR_EMAIL>"
Your Cloud Code has been created at /dev/nodejs-back4app.
  1. Créer une nouvelle application ou une application existante : new
  2. Choisir un nom d’application : Choisir un nom personnalisé
  3. Nom du répertoire : appuyer sur ENTER
  4. Projet de code cloud vierge ou échantillon : appuyer sur la touche ENTER

La commande va créer un répertoire avec la structure suivante :

nodejs-back4app/
├── cloud/
│   └── main.js
├── public/
│   └── index.html
├── .parse.local
└── .parse.project
  1. cloud est un répertoire pour tout le code et les fonctions de cloud
  2. public est un répertoire pour les fichiers publics tels que les images, les feuilles de style, etc.
  3. .parse.local et .parse.project sont utilisés pour stocker la configuration de Parse.

Supprimez les fichiers main.js et index.html car nous n’en aurons pas besoin.

Hébergement web

Puisque nous créons une application Node.js, nous devons activer l’hébergement web pour que Back4app puisse héberger notre application et la rendre publiquement accessible à l’internet.

Pour activer la fonction d’hébergement web, naviguez dans votre tableau de bord Back4app, sélectionnez votre application, cliquez sur “Paramètres de l’application” sur le côté gauche de l’écran, puis sur “Paramètres du serveur”. Recherchez “Webhosting and Custom Domains” et cliquez à nouveau sur “Settings”.

Cliquez sur “Activer l’hébergement Back4app” et choisissez un nom de sous-domaine. J’utiliserai nodejsback4app:

Back4app hébergement web

Enfin, cliquez sur “Enregistrer”.

Votre application sera alors accessible sur :

https://<your_subdomain>.b4a.app/

N’hésitez pas à lier un domaine personnalisé à votre application web !

Express avec Cloud Code Functions

Ensuite, commençons à travailler sur le code proprement dit.

Changez votre répertoire en cloud et créez le fichier package.json à l’intérieur :

Back4app utilise ce fichier pour télécharger des modules via npm. Nous avons ajouté body-parser car nous en aurons besoin plus tard pour analyser les requêtes.

Ensuite, créez un autre fichier dans le dossier clouds nommé app.js :

Ce fichier est utilisé pour initialiser et configurer Express. Nous avons également défini un point de terminaison qui sera utilisé comme contrôle d’intégrité dans l’étape suivante. Comme vous pouvez le voir, nous n’avons pas eu besoin de définir l’application ou d’exiger des dépendances puisque Back4app le fait pour nous automatiquement.

Ensuite, déployez l’application :

$ b4a deploy

Uploading source files
Uploading recent changes to scripts...
Finished uploading files
New release is named v1 (using Parse JavaScript SDK v2.2.25)

La commande va télécharger vos fichiers sources sur Back4app, tout configurer et rendre votre application disponible sur le sous-domaine que vous avez choisi dans la section précédente.

Pour vous assurer que cela fonctionne, ouvrez votre navigateur web préféré et accédez à votre application :

https://<your_subdomain>.b4a.app/

# Example
https://nodejsback4app.b4a.app/

Vous devriez obtenir la réponse suivante :

Bon travail !

Dans les prochaines sections, nous commencerons à travailler sur l’application TODO proprement dite.

Base de données avec ParseJS

Définissons les modèles de base de données pour l’application TODO.

Naviguez vers le tableau de bord de Back4app et sélectionnez “Database” sur le côté gauche de l’écran. Cliquez ensuite sur “Créer une nouvelle classe”, nommez-la ” Tâche ” et assurez-vous de cocher la case “Lecture et écriture publiques autorisées” :

Back4app crée une nouvelle classe

Ajoutez ensuite les colonnes suivantes :

+-----------+-------------+---------------+----------+
| Data type | Name        | Default value | Required |
+-----------+-------------+---------------+----------+
| String    | name        | <leave blank> | yes      |
+-----------+-------------+---------------+----------+
| String    | description | <leave blank> | no       |
+-----------+-------------+---------------+----------+
| Boolean   | isDone      | false         | yes      |
+-----------+-------------+---------------+----------+

Logique d’application

L’application aura les points de terminaison suivants :

  1. / afficher la liste des tâches
  2. /create crée une tâche
  3. /<ID> affiche les détails de la tâche
  4. /<ID>/delete supprime une tâche
  5. /<ID>/toggle bascule le statut de la tâche — done/undone

Créons-les.

Pour faciliter la maintenance du code de notre nuage, nous le diviserons en deux fichiers.

  1. app.js — initialise et configure le serveur Express
  2. routes.js — définit les points d’accès et leur logique

Une meilleure approche pour construire des applications web modernes est d’utiliser un modèle architectural Modèle-Vue-Contrôleur (MVC). Un bon début avec Express est d’utiliser express-generator.

Remplacez le contenu de app.js par ce qui suit :

  1. Nous avons défini Twig comme moteur de visualisation par défaut.
  2. Les routes ne sont plus définies dans ce fichier, mais dans routes.js.

Ensuite, créez routes.js et insérez le code suivant :

Nous avons défini toutes les routes mentionnées ci-dessus et utilisé Parse pour manipuler et stocker les données. Comme vous pouvez le voir, toutes les routes sont asynchrones puisque nous devons attendre la réponse de Parse. De plus, la plupart du code est enveloppé dans des blocs try-catch au cas où quelque chose se passerait mal.

Pour plus d’informations sur ParseJS, consultez le Guide JavaScript.

Ensuite, accompagnons les points de terminaison avec des modèles de vue.

Créez un dossier ” views” dans le dossier ” clouds”, téléchargez les fichiers du modèle à partir du répertoire GitHub et placez-les dans le répertoire ” views”.

Votre structure de répertoire finale devrait ressembler à ceci :

nodejs-back4app/
├── cloud/
│   ├── views/
│   │   ├── base.twig
│   │   ├── create.twig
│   │   ├── error.twig
│   │   ├── index.twig
│   │   └── task.twig
│   ├── app.js
│   ├── routes.js
│   └── package.json
├── public
├── parse.local
└── parse.project

Enfin, ajoutez twing au package.json pour activer le support de Twig :

Déployer l’application :

$ b4a deploy

Uploading source files
Uploading recent changes to scripts...
Finished uploading files
New release is named v2 (using Parse JavaScript SDK v2.2.25)

Vous avez terminé. Attendez quelques minutes, puis visitez l’application web pour vérifier que tout fonctionne.

Dossiers publics

Comme mentionné dans la section précédente, Back4app sert automatiquement les fichiers situés dans le dossier public. Pour les utiliser dans vos modèles, vous devrez modifier légèrement vos paramètres Express.

Allez dans app.js et ajoutez les lignes suivantes :

Vous pouvez ensuite faire référence aux fichiers publics dans vos modèles via le chemin relatif :

<img src="/back4app.png" alt="Back4app Logo">

Affiche l’image située dans public/back4app.png.

Conclusion

Node n’a cessé de se développer et de s’améliorer depuis sa sortie en 2009. C’est l’un des meilleurs outils permettant aux développeurs de créer facilement des applications évolutives et performantes.

Les applications Node peuvent être déployées sur différentes solutions telles que IaaS, PaaS et SaaS. Chacune de ces solutions présente des avantages et des inconvénients qu’il convient de prendre en compte lors du choix de l’option de déploiement.

L’une des façons les plus simples de déployer des applications Node est d’utiliser Back4app — une solution BaaS open-source avec de nombreuses fonctionnalités. Back4app est idéal car il vous permet de vous concentrer sur ce qui est important tout en externalisant le backend et son déploiement.

Obtenir le code source final depuis le repo de back4app-nodejs.

Pour en savoir plus sur les options d’hébergement Node.js, veuillez consulter Comment héberger une application Node.JS à l’aide de conteneurs.


Leave a reply

Your email address will not be published.