Nodejs crée un serveur http

May 11, 2023 pm 09:28 PM

Node.js est un environnement d'exécution JavaScript construit sur le moteur Chrome V8 et est largement utilisé dans le développement d'applications Web. Dans Node.js, nous pouvons facilement créer un serveur HTTP et accéder aux pages Web du serveur via le navigateur. Cet article explique comment utiliser Node.js pour créer un serveur HTTP.

  1. Installer Node.js

Tout d'abord, nous devons installer l'environnement Node.js localement. Vous pouvez accéder au site officiel de Node.js https://nodejs.org/ pour télécharger la dernière version et l'installer. Une fois l'installation terminée, vous pouvez saisir la commande suivante dans la ligne de commande pour vérifier si l'installation a réussi :

node -v
Copier après la connexion

Si le numéro de version de Node.js s'affiche correctement, l'installation est réussie.

  1. Créer un serveur HTTP

Créer un serveur HTTP avec Node.js est très simple. Il vous suffit d'introduire le module "http" intégré de Node.js dans un fichier JavaScript, de créer un serveur et d'écouter le port spécifié. Voici un exemple simple :

const http = require('http');

const hostname = '127.0.0.1';
const port = 3000;

const server = http.createServer((req, res) => {
    res.statusCode = 200;
    res.setHeader('Content-Type', 'text/plain');
    res.end('Hello World!
');
});

server.listen(port, hostname, () => {
    console.log(`Server running at http://${hostname}:${port}/`);
});
Copier après la connexion

Le code ci-dessus crée un serveur HTTP et écoute le port 3000. Lorsqu'un client accède au serveur, il renvoie la chaîne "Hello World!".

  1. Accès au serveur HTTP

Après avoir démarré le serveur HTTP, nous pouvons utiliser le navigateur pour accéder au serveur. Entrez "http://localhost:3000" dans la barre d'adresse du navigateur (si le serveur ne fonctionne pas localement, remplacez "localhost" par l'adresse IP du serveur) et vous verrez le navigateur afficher la chaîne de caractères "Hello World!".

  1. Traitement des requêtes HTTP

L'exemple ci-dessus n'est que l'exemple le plus simple. En fait, lors du traitement des requêtes HTTP, nous devons générer des réponses correspondantes en fonction du contenu de l'en-tête et du corps de la requête. Le module http de Node.js nous fournit une API spécifiquement pour gérer les requêtes. Par exemple, nous pouvons obtenir l'adresse URL demandée via req.url et obtenir la méthode demandée via req.method. Voici un exemple de renvoi de différents messages en fonction de différentes adresses URL :

const http = require('http');

const hostname = '127.0.0.1';
const port = 3000;

const server = http.createServer((req, res) => {
    res.statusCode = 200;
    res.setHeader('Content-Type', 'text/plain');
    if (req.url === '/about') {
        res.end('This is about page');
    } else if (req.url === '/contact') {
        res.end('This is contact page');
    } else {
        res.end('Hello World!
');
    }
});

server.listen(port, hostname, () => {
    console.log(`Server running at http://${hostname}:${port}/`);
});
Copier après la connexion

Visitez "http://localhost:3000/about" dans le navigateur, vous verrez le navigateur afficher la chaîne "Ceci est à propos de la page" ; " http://localhost:3000/contact", vous verrez le navigateur afficher la chaîne "This is contact page" ; visitez "http://localhost:3000", vous verrez la chaîne du navigateur afficher "Hello World!" .

  1. Traitement des requêtes POST

En plus du traitement des requêtes GET, nous pouvons également traiter les requêtes POST et stocker les données transmises par le client au serveur. Le module http de Node.js nous fournit également une API pour traiter les requêtes POST. Voici un exemple simple de traitement de requête POST :

const http = require('http');

const hostname = '127.0.0.1';
const port = 3000;

const server = http.createServer((req, res) => {
    if (req.method === 'POST') {
        let body = '';
        req.on('data', chunk => {
            body += chunk.toString();
        });
        req.on('end', () => {
            console.log(`Received data: ${body}`);
            res.end('Data received');
        });
    } else {
        res.statusCode = 200;
        res.setHeader('Content-Type', 'text/plain');
        res.end('Hello World!
');
    }
});

server.listen(port, hostname, () => {
    console.log(`Server running at http://${hostname}:${port}/`);
});
Copier après la connexion

Lors du traitement de la requête HTTP, le code ci-dessus détermine d'abord si la méthode de requête est POST. S'il s'agit de POST, il surveille l'événement de transmission de données et stocke les données transmises dans le corps. variable et imprimer une fois le transfert de données terminé. Dans le fichier HTML du client, vous pouvez utiliser l'élément

pour soumettre une requête POST, par exemple :

<!DOCTYPE html>
<html>
<head>
    <title>POST Request Example</title>
</head>
<body>
    <form action="http://localhost:3000" method="post">
        <label for="name">Name:</label>
        <input type="text" id="name" name="name"><br><br>
        <label for="email">Email:</label>
        <input type="email" id="email" name="email"><br><br>
        <input type="submit" value="Submit">
    </form>
</body>
</html>
Copier après la connexion

Cliquez sur le bouton Soumettre après avoir rempli le formulaire, et la requête POST sera soumise au serveur HTTP et au les données seront transmises.

Résumé

Construire un serveur HTTP à l'aide de Node.js est très simple et offre une bonne évolutivité et personnalisation. Cet article explique comment créer un serveur HTTP, gérer les requêtes HTTP et gérer les requêtes POST. En apprenant les connaissances ci-dessus, nous pouvons rapidement créer nos propres applications Web et créer des services Web efficaces et fiables.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn

Outils d'IA chauds

Undresser.AI Undress

Undresser.AI Undress

Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover

AI Clothes Remover

Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Clothoff.io

Clothoff.io

Dissolvant de vêtements AI

AI Hentai Generator

AI Hentai Generator

Générez AI Hentai gratuitement.

Article chaud

R.E.P.O. Crystals d'énergie expliqués et ce qu'ils font (cristal jaune)
1 Il y a quelques mois By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Meilleurs paramètres graphiques
1 Il y a quelques mois By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Comment réparer l'audio si vous n'entendez personne
1 Il y a quelques mois By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Commandes de chat et comment les utiliser
1 Il y a quelques mois By 尊渡假赌尊渡假赌尊渡假赌

Outils chauds

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise

SublimeText3 version chinoise

Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

Dreamweaver CS6

Dreamweaver CS6

Outils de développement Web visuel

SublimeText3 version Mac

SublimeText3 version Mac

Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Qu'est-ce que l'utilisation Effecte? Comment l'utilisez-vous pour effectuer des effets secondaires? Qu'est-ce que l'utilisation Effecte? Comment l'utilisez-vous pour effectuer des effets secondaires? Mar 19, 2025 pm 03:58 PM

L'article traite de l'utilisation Effecte dans React, un crochet pour gérer les effets secondaires comme la récupération des données et la manipulation DOM dans les composants fonctionnels. Il explique l'utilisation, les effets secondaires courants et le nettoyage pour éviter des problèmes comme les fuites de mémoire.

Comment fonctionne l'algorithme de réconciliation React? Comment fonctionne l'algorithme de réconciliation React? Mar 18, 2025 pm 01:58 PM

L'article explique l'algorithme de réconciliation de React, qui met à jour efficacement le DOM en comparant les arbres DOM virtuels. Il traite des avantages de la performance, des techniques d'optimisation et des impacts sur l'expérience utilisateur. Compte de charge: 159

Quelles sont les fonctions d'ordre supérieur en JavaScript, et comment peuvent-ils être utilisés pour écrire du code plus concis et réutilisable? Quelles sont les fonctions d'ordre supérieur en JavaScript, et comment peuvent-ils être utilisés pour écrire du code plus concis et réutilisable? Mar 18, 2025 pm 01:44 PM

Les fonctions d'ordre supérieur dans JavaScript améliorent la concision du code, la réutilisabilité, la modularité et les performances par abstraction, modèles communs et techniques d'optimisation.

Comment fonctionne le currying en JavaScript et quels sont ses avantages? Comment fonctionne le currying en JavaScript et quels sont ses avantages? Mar 18, 2025 pm 01:45 PM

L'article traite du curry dans JavaScript, une technique transformant les fonctions mulguments en séquences de fonctions à argument unique. Il explore la mise en œuvre du currying, des avantages tels que des applications partielles et des utilisations pratiques, améliorant le code

Qu'est-ce que UseContext? Comment l'utilisez-vous pour partager l'état entre les composants? Qu'est-ce que UseContext? Comment l'utilisez-vous pour partager l'état entre les composants? Mar 19, 2025 pm 03:59 PM

L'article explique UseContext dans React, qui simplifie la gestion de l'État en évitant le forage des accessoires. Il traite des avantages tels que les améliorations centralisées de l'État et des performances grâce à des redevances réduites.

Comment connectez-vous les composants React au magasin Redux à l'aide de Connect ()? Comment connectez-vous les composants React au magasin Redux à l'aide de Connect ()? Mar 21, 2025 pm 06:23 PM

L'article discute de la connexion des composants React à Redux Store à l'aide de Connect (), expliquant MapStateToproprop, MapDispatchToprops et des impacts de performances.

Comment empêchez-vous le comportement par défaut dans les gestionnaires d'événements? Comment empêchez-vous le comportement par défaut dans les gestionnaires d'événements? Mar 19, 2025 pm 04:10 PM

L'article discute de la prévention des comportements par défaut dans les gestionnaires d'événements à l'aide de la méthode empêchée dedEfault (), de ses avantages tels que une expérience utilisateur améliorée et des problèmes potentiels tels que les problèmes d'accessibilité.

Quels sont les avantages et les inconvénients des composants contrôlés et incontrôlés? Quels sont les avantages et les inconvénients des composants contrôlés et incontrôlés? Mar 19, 2025 pm 04:16 PM

L'article traite des avantages et des inconvénients des composants contrôlés et incontrôlés dans la réaction, en se concentrant sur des aspects tels que la prévisibilité, la performance et les cas d'utilisation. Il conseille les facteurs à considérer lors du choix entre eux.

See all articles