Node.js は非常に人気のあるサーバーサイド JavaScript 環境であり、その主な利点の 1 つは、大量の同時リクエストを効率的に処理できることです。この記事では、Node.js を使用してリクエストをリッスンする方法を紹介します。
Node.js を使用してリクエストをリッスンするには、まずサーバーを作成する必要があります。 Node.js では、組み込みの http
モジュールを使用してサーバーを作成できます。簡単なサーバーの例を次に示します。
const http = require("http"); const server = http.createServer((req, res) => { res.writeHead(200, { "Content-Type": "text/plain" }); res.write("Hello, World!"); res.end(); }); server.listen(3000, () => { console.log("Server listening on port 3000"); });
この例では、サーバーを作成し、ポート 3000 でリクエストをリッスンします。リクエストを受信すると、サーバーは「Hello, World!」メッセージを含む HTTP 応答を返します。
これでサーバーを起動し、ブラウザーを使用してアクセスできるようになります。ブラウザに http://localhost:3000
と入力するだけで、「Hello, World!」というメッセージが表示されます。これは、サーバーが正常に動作しており、リクエストをリッスンしていることを意味します。
Node.js を使用して実際のリクエストをリッスンする例をいくつか見てみましょう。
最初の例:
const http = require("http"); const server = http.createServer((req, res) => { if (req.method === "GET" && req.url === "/") { res.writeHead(200, { "Content-Type": "text/plain" }); res.write("Hello, World!"); res.end(); } else { res.writeHead(404, { "Content-Type": "text/plain" }); res.write("404 Not Found"); res.end(); } }); server.listen(3000, () => { console.log("Server listening on port 3000"); });
この例では、GET リクエストのみを処理し、ルート パスからのリクエストのみを受け入れました/
request 。要求された URL が /
ではない場合、404 Not Found エラーが返されます。
POST リクエストを処理する場合は、Node.js の組み込み querystring
モジュールを使用してリクエスト本文のデータを解析する必要があります。簡単な例を次に示します。
const http = require("http"); const qs = require("querystring"); const server = http.createServer((req, res) => { if (req.method === "POST" && req.url === "/") { let body = ""; req.on("data", (chunk) => { body += chunk; }); req.on("end", () => { const data = qs.parse(body); res.writeHead(200, { "Content-Type": "text/plain" }); res.write(`Hello, ${data.name}!`); res.end(); }); } else { res.writeHead(404, { "Content-Type": "text/plain" }); res.write("404 Not Found"); res.end(); } }); server.listen(3000, () => { console.log("Server listening on port 3000"); });
この例では、POST リクエストを処理し、リクエスト本文のデータを解析します。応答では、リクエスト本文の名前を使用してパーソナライズされたメッセージを作成しました。
実際のアプリケーションでは、通常、Node.js サーバー上で静的ファイル サービスを提供します。これを行うには、express
フレームワークと serve-static
モジュールを使用して静的ファイルの提供を有効にします。 express
と serve-static
を使用した例を次に示します。
const express = require("express"); const serveStatic = require("serve-static"); const app = express(); app.use(serveStatic("public", { index: false })); const port = process.env.PORT || 3000; app.listen(port, () => { console.log(`Server listening on http://localhost:${port}`); });
この例では、提供される静的ファイルが配置されているディレクトリを指定します (この例では、この例では、これは public
ディレクトリです) を serve-static
ミドルウェアに渡します。次に、ミドルウェアを app
インスタンスに追加します。これで、express
を使用して静的ファイル サービスを作成し、ポート 3000 でリクエストをリッスンできるようになりました。
上記は、Node.js でリクエストをリッスンして処理する例をいくつか示しています。アプリケーションシナリオが異なれば、必要な方法も異なります。 Node.js の組み込み HTTP モジュールを使用すると、リクエストをリッスンするサーバーを簡単に作成でき、いくつかのミドルウェアを介してさまざまな種類のリクエストを簡単に処理することもできます。これらの例が、Node.js でリクエストをリッスンする方法を理解するのに役立つことを願っています。
以上がNode.js を使用してリクエストをリッスンする方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。