Node.js での AJAX 呼び出し

Shraddha Paghdar 2023年10月12日
Node.js での AJAX 呼び出し

Representational State TransferRESTと呼びます。 RESTアーキテクチャ スタイルの制限と制約に準拠し、RESTful Web サービスとの対話を可能にする API または Web API (アプリケーション プログラミング インターフェース) は、RESTAPI またはRESTfulAPI として知られています。

本日の投稿では、Node.js を使用してサードパーティ パッケージを使用してリクエストを行う方法を学びます。

Node.js での AJAX 呼び出し

node-fetch は、Node.js で fetch() 関数を使用できるようにする軽量のパッケージ/モジュールです。 その機能は、Vanilla JavaScript の window.fetch() に非常に似ています。

node-fetch は無料のサードパーティ パッケージであり、ブラウザおよび Node.js 用の Promise ベースの HTTP クライアントです。 NPMで入手できます。

node-fetch を使用して、非同期 HTTP リクエストを REST エンドポイントに送信できます。 node-fetch を使用すると、CRUD 操作を簡単に実行できます。

これは Vanilla JavaScript で、または Node.js や React などのライブラリで使用できます。 node-fetch の詳細については こちら を参照してください。

HTTP GET メソッドは、サーバーからリソースを取得します。 たとえば、ブラウザは、サーバーから TODO データ リストをフェッチするとき、または特定の TODO リクエストの情報をフェッチするときに、HTTP GET リクエスト メソッドを使用します。

GET および HEAD リクエストは、サーバーの状態を変更しません。

GETAPI はべき等です。つまり、POSTPUTなどの別の API がサーバーに対して行われ、サーバー上のリソースの状態が変更されるまで、複数の同一のリクエストを行うと、毎回同じ結果が生成されます。

次のコマンド $ npm i node-fetch を使用して node-fetch ライブラリをインストールします。

GET リクエストは get メソッドで作成されます。

const fetch = require('node-fetch');
async function getTodoData() {
  const payload = {title: 'Hello World', body: 'Welcome to Node tutorial'};
  const response = await fetch('https://jsonplaceholder.typicode.com/posts', {
    method: 'post',
    body: JSON.stringify(payload),
    headers: {'Content-Type': 'application/json'}
  });
  const data = await response.json();
  console.log(data);
}
getTodoData();

上記の例では、ユーザーがファイルを実行すると、fetch モジュールを使用して、指定された URL (この投稿ではダミー) を使用して、GET 呼び出しがノード サーバーに送信されます。 サーバーがこのデータを中断することなく処理すると、成功メッセージが返されます。

サーバー応答の出力に基づいて、コンソールにメッセージを出力するか、適切なメッセージでユーザーに通知できます。

Node.js をサポートする replit で上記のコード スニペットを実行してみてください。 下に結果が表示されます。

{ title: 'Hello World', body: 'Welcome to Node tutorial', id: 101 }

デモ

Shraddha Paghdar avatar Shraddha Paghdar avatar

Shraddha is a JavaScript nerd that utilises it for everything from experimenting to assisting individuals and businesses with day-to-day operations and business growth. She is a writer, chef, and computer programmer. As a senior MEAN/MERN stack developer and project manager with more than 4 years of experience in this sector, she now handles multiple projects. She has been producing technical writing for at least a year and a half. She enjoys coming up with fresh, innovative ideas.

LinkedIn