Des lecteurs comme vous aident à soutenir MUO. Lorsque vous effectuez un achat en utilisant des liens sur notre site, nous pouvons gagner une commission d'affiliation. En savoir plus.

En octobre 2022, Node.js a publié sa 19e version. Il est intervenu six mois après la sortie de Node.js v.18, qui comportait des mises à niveau importantes telles que le module de testeur natif.

Une caractéristique notable de Node.js 19 est le nouveau mode de surveillance expérimental. Cela vous permet d'apporter des modifications à votre serveur sans avoir à le redémarrer.

Avant Node.js 19, le mode montre n'était possible qu'en utilisant des bibliothèques tierces. Apprenez à utiliser le mode montre et explorez d'autres mises à jour de Node.js dans la version 19.

Nouveau mode de montre de Node

Node.js 19 introduit l'expérimental --montre drapeau, qui redémarre un serveur Node.js lorsqu'il détecte des modifications dans le fichier spécifié. Vous pouviez le faire auparavant en utilisant une bibliothèque tierce appelée

instagram viewer
Nodemon, mais la mise à jour supprime le besoin d'une dépendance en ajoutant sa fonctionnalité à Node.js.

Pour redémarrer votre serveur Node.js en utilisant le --montre drapeau, exécutez le nœud commande avec le --montre suivi du nom du fichier que vous souhaitez redémarrer lorsque Node détecte des modifications.

Par exemple, considérez ce bloc de code comme un serveur.js déposer:

// serveur.js
constante exprimer = exiger("exprimer");
constante app = express();
constante PORT = 6060;

app.listen (PORT, () => console.enregistrer(`L'application écoute sur le port: ${PORT}`));

Pour surveiller les modifications apportées à ce fichier et redémarrer le serveur lorsqu'elles se produisent, exécutez cette commande sur votre terminal :

nœud --serveur de surveillance

La commande surveillera votre fichier server.js et redémarrera le serveur Node.js lorsqu'il détectera des modifications apportées au fichier.

Il convient de noter que cette fonctionnalité est encore expérimentale, ce qui signifie que vous pouvez rencontrer des problèmes lors de l'utilisation du --montre flag pour redémarrer votre serveur.

Autres mises à niveau et correctifs

Les autres améliorations et correctifs fournis avec Node.js 19 incluent les éléments suivants.

HTTP Keep-Alive par défaut

Le http/https modules rester en vie L'option contrôle si elle doit conserver une connexion à un serveur après avoir terminé une requête. À l'origine, vous deviez définir le rester en vie possibilité de vrai manuellement. Cette option demande au serveur de garder la connexion ouverte et de la réutiliser pour les requêtes ultérieures.

Dans Node.js 19, le rester en vie L'option est définie sur true par défaut. Cet ajout réduira considérablement les frais généraux liés à l'établissement de nouvelles connexions.

Stabilisation de l'API WebCrypto

L'API WebCrypto est l'implémentation de Node.js de la norme Web Crypto API. Avec Node.js 19, l'implémentation de WebCrypto est maintenant stable, à l'exception du Ed25519, Ed448, X25519, et X448 algorithmes.

Vous pouvez accéder à cette API en utilisant le globalThis module ou le nœud: préfixe qui Node.js 18 introduit pour différencier les modules Node.js de base des bibliothèques tierces.

Par exemple:

// nœud: préfixe
constante crypto = exiger("nœud: crypto");

// globalThis
constante webcrypt = globalThis.crypto;

Ajustements de résolution ESM personnalisés

Node.js 19 supprime le précédent expérimental --experimental-specifier-resolution drapeau. Cela a fourni un support expérimental pour la localisation des fichiers à l'aide de spécificateurs de package, similaire à la façon dont ECMAScript importe les modules.

Node.js a supprimé cet indicateur car vous pouvez répliquer leurs fonctionnalités à l'aide de chargeurs personnalisés. Vous pouvez utiliser des chargeurs personnalisés pour prendre en charge davantage de formats de module ou pour traiter davantage les modules avant le chargement, car ils vous permettent de fournir votre logique unique pour le chargement et le traitement des modules.

Suppression de la prise en charge de DTrace/SystemTap/ETW

DTrace, SystemTap et ETW (Event Tracing for Windows) sont des modules qui offrent un traçage et une analyse dynamiques des programmes en cours d'exécution. À l'origine dans Node.js, vous pouviez les utiliser pour collecter des données sur l'activité d'une application, y compris des indicateurs de performance, des erreurs et d'autres occurrences d'exécution possibles.

Dans Node.js 19, Node.js a supprimé la prise en charge de DTrace, SystemTap et ETW, car la complexité liée à la maintenance et à la mise à jour de ces modules n'en vaut pas encore la peine. Donc, pour prioriser leurs ressources, ils ont abandonné leur soutien.

Mise à niveau vers Node.js 19

Node.js 19 introduit diverses fonctionnalités et améliorations à prendre en compte pour votre application, y compris le nouveau mode montre, entre autres discutés ci-dessus. Pour passer à Node.js 19, rendez-vous sur le site officiel et téléchargez la version actuelle.