ホームページ > ウェブフロントエンド > フロントエンドQ&A > Nodejsでデータを送信する方法

Nodejsでデータを送信する方法

PHPz
リリース: 2023-04-05 10:52:48
オリジナル
951 人が閲覧しました

Node.js は、Chrome V8 エンジンに基づいたサーバーサイド JavaScript 環境です。Node.js を使用すると、フロントエンド開発者が JavaScript でバックエンド コードを作成できるため、フロントエンドとバックエンドの JavaScript の一貫性が実現されます。 Node.js では、HTTP モジュールを使用してデータを送信することも、Request、SuperAgent などのサードパーティ モジュールを使用してデータを送信することもできます。

1. HTTP モジュールを使用してデータを送信する

Node.js の HTTP モジュールは、Node.js がネイティブに提供するモジュールの 1 つで、HTTP クライアントとサーバーを簡単に作成できます。 HTTP モジュールの request メソッドを使用して、HTTP リクエストを直接送信し、データを送信できます。 HTTP モジュールの使用法は次のとおりです。

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();
ログイン後にコピー

上記のコードでは、まず JSON.stringify メソッドを使用してデータを JSON 文字列形式に変換し、次にリクエスト ヘッダーとリクエストされた URL を定義します。リクエストを送信するときは、req.write メソッドを直接使用してサーバーにデータを送信できます。送信後はreq.endメソッドでリクエストを終了します。

2. サードパーティ モジュールを使用してデータを送信する

HTTP モジュールを使用してデータを送信することに加えて、Request、SuperAgent、等これらのモジュールは通常、ネイティブ HTTP モジュールをカプセル化して、機能を追加し、リクエスト操作を簡素化します。たとえば、Request モジュールを使用してデータを送信するコードは次のとおりです。

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);
});
ログイン後にコピー

上記のコードでは、リクエストされた URL とリクエストされたメソッドが最初に定義され、データは JSON オブジェクトとして直接送信されます。 json 属性。送信完了後、定義されたコールバック関数を通じてサーバー応答データが返されます。

概要

上記では、Node.js でデータを送信する 2 つの方法を紹介しました。データを含むリクエストを送信する必要がある場合は、適切な方法を選択して操作できます。 HTTP モジュールを使用してリクエストを送信すると、より柔軟になり、サードパーティのモジュールを使用すると、リクエストされた操作をより速く完了できます。どの方法を採用する場合でも、実際の状況に基づいて選択する必要があります。

以上がNodejsでデータを送信する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート