Comment envoyer des données dans nodejs

PHPz
Libérer: 2023-04-05 10:52:48
original
899 Les gens l'ont consulté

Node.js est un environnement JavaScript côté serveur basé sur le moteur Chrome V8. L'utilisation de Node.js permet aux développeurs front-end d'écrire du code back-end avec JavaScript, obtenant ainsi une cohérence JavaScript front-end et back-end. Dans Node.js, vous pouvez utiliser le module HTTP pour envoyer des données, ou vous pouvez utiliser des modules tiers tels que Request, SuperAgent, etc. pour envoyer des données.

1. Utilisez le module HTTP pour envoyer des données

Le module HTTP de Node.js est l'un des modules fournis nativement par Node.js. Il permet de créer facilement des clients et des serveurs HTTP. Vous pouvez utiliser la méthode de requête dans le module HTTP pour envoyer directement des requêtes HTTP et envoyer des données. L'utilisation du module HTTP est la suivante :

const http = require('http');

const data = JSON.stringify({
  title: 'foo',
  body: 'bar',
  userId: 1
});

const options = {
  hostname: 'jsonplaceholder.typicode.com',
  path: '/posts',
  method: 'POST',
  headers: {
    'Content-Type': 'application/json',
    'Content-Length': data.length
  }
};

const req = http.request(options, (res) => {
  console.log(`statusCode: ${res.statusCode}`);

  res.on('data', (d) => {
    process.stdout.write(d);
  });
});

req.on('error', (error) => {
  console.error(error);
});

req.write(data);
req.end();
Copier après la connexion

Dans le code ci-dessus, utilisez d'abord la méthode JSON.stringify pour convertir les données au format de chaîne JSON, puis définissez les en-têtes de requête et l'URL demandée. Lors de l'envoi d'une requête, vous pouvez utiliser directement la méthode req.write pour envoyer des données au serveur. Après l'envoi, terminez la demande via la méthode req.end.

2. Utilisez des modules tiers pour envoyer des données

En plus d'utiliser le module HTTP pour envoyer des données, vous pouvez également utiliser des modules d'envoi de données tiers, tels que Request, SuperAgent, etc. Ces modules encapsulent généralement des modules HTTP natifs, ajoutant plus de fonctions et simplifiant les opérations de requête. Par exemple, le code pour envoyer des données à l'aide du module Request est le suivant :

const request = require('request');

const options = {
  url: 'https://jsonplaceholder.typicode.com/posts',
  method: 'POST',
  json: {
      title: 'foo',
      body: 'bar',
      userId: 1
  }
};

request(options, (error, response, body) => {
  if (error) throw new Error(error);
  console.log(body);
});
Copier après la connexion

Dans le code ci-dessus, l'URL demandée et la méthode demandée sont d'abord définies, et les données sont envoyées directement sous forme d'objet JSON via l'attribut json. Une fois l'envoi terminé, les données de réponse du serveur sont renvoyées via la fonction de rappel définie.

Résumé

Ce qui précède présente deux méthodes d'envoi de données dans Node.js Si vous devez envoyer une requête avec des données, vous pouvez choisir la méthode appropriée à utiliser. L'utilisation du module HTTP pour envoyer des requêtes peut être plus flexible et l'utilisation de modules tiers peut terminer l'opération demandée plus rapidement. Quelle que soit la méthode adoptée, le choix doit être basé sur la situation réelle.

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!

source:php.cn
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
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!