Node.js で HTTP Web サーバーを作成する: コード例を含むチュートリアル
Node.js フレームワークは主にサーバーベースのアプリケーションを作成するために使用されます。 このフレームワークを使用すると、ユーザーにコンテンツを提供できる Web サーバーを簡単に作成できます。
「http」モジュールや「request」モジュールなど、Web サーバー空間でのサーバー関連のリクエストの処理に役立つさまざまなモジュールがあります。 を使用して基本的な Web サーバー アプリケーションを作成する方法を見ていきます。 ノードjs.
HTTPを使用したWebサーバーとしてのノード
最初の Node js アプリケーションを作成して実行する方法の例を見てみましょう。
私たちのアプリケーションは、ポート番号 7000 でリッスンする単純なサーバー モジュールを作成します。このポート番号でブラウザを通じてリクエストが行われた場合、サーバー アプリケーションはクライアントに「Hello World」応答を送信します。
コードの説明
- require 関数の基本的な機能は、 Javaスクリプト ファイルを実行し、エクスポート オブジェクトを返します。 この場合、http モジュールの機能を使用したいので、アプリケーションで使用できるように、require 関数を使用して http モジュールから必要な関数を取得します。
- このコード行では、単純な関数に基づくサーバー アプリケーションを作成しています。 この関数は、サーバー アプリケーションにリクエストが行われるたびに呼び出されます。
- リクエストを受信すると、ヘッダー タイプが「200」のレスポンスを送信することになります。 この数値は、成功した応答がクライアントに送信されるときに http ヘッダーで送信される通常の応答です。
- 応答自体では、文字列「Hello World」を送信しています。
- 次に、server.listen 関数を使用して、サーバー アプリケーションがポート番号 7000 でクライアント要求をリッスンするようにします。ここでは、使用可能な任意のポートを指定できます。
コマンドが正常に実行された場合、ブラウザでコードを実行すると次の出力が表示されます。
出力
出力から、
- ポート 7000 の localhost の URL を参照すると、ページに「Hello World」という文字列が表示されることがわかります。
- コードでは、サーバーがポート番号 7000 でリッスンするように特に指定しているため、この URL を参照すると出力を表示できます。
参考用のコードは次のとおりです
var http=require('http') var server=http.createServer((function(request,response) { response.writeHead(200, {"Content-Type" : "text/plain"}); response.end("Hello World\n"); })); server.listen(7000);
Node.js での GET リクエストの処理
Node.jsでは、別のサイトからデータを取得するためのGETリクエストの作成は比較的簡単です。ノードでGETリクエストを作成するには、まずリクエストモジュールをインストールする必要があります。これは、コマンドラインで次の行を実行することで実行できます。
npmインストールリクエスト
上記のコマンドは、ノード パッケージ マネージャーに対して、必要な要求モジュールをダウンロードし、それに応じてインストールするように要求します。
npm モジュールが正常にインストールされると、コマンド ラインにインストールされたモジュールの名前とバージョンが表示されます。 @ 。
上記のスナップショットでは、「request」モジュールとバージョン番号 2.67.0 がダウンロードされ、インストールされたことがわかります。
次に、この「request」コマンドを利用できるコードを見てみましょう。
コードの説明
- 最後のステップでインストールした「request」モジュールを使用しています。 このモジュールには、Web サイトに GET リクエストを行うために使用できる必要な機能が含まれています。
- www.google.com に GET リクエストを送信し、応答を受信したときに関数を呼び出します。応答を受信すると、パラメータ (エラー、応答、本文) は次の値になります。
- エラー – GET リクエストの使用時にエラーを受信した場合、ここに記録されます。
- 応答 - 応答には、応答で送り返される http ヘッダーが含まれます。
- 本文 - 本文には、Google から送信された応答の内容全体が含まれます。
- ここでは、body パラメータで受け取ったコンテンツを console.log ファイルに書き込んでいるだけです。 つまり、基本的に、そこに行くことで得られるものはすべて、 www.google.com console.log に書き込まれます。
参考用のコードは次のとおりです
var request = require("request"); request("http://www.google.com",function(error,response,body) { console.log(body); });
まとめ
- Node.js フレームワークは、「http」モジュールを使用した Web サーバーの開発に使用できます。 アプリケーションに対してリクエストが行われるたびに、アプリケーションが特定のポートでリッスンし、クライアントに応答を送信するようにすることができます。
- 「リクエスト」モジュールは、Web サイトから情報を取得するために使用できます。 この情報には、関連する Web サイトから要求された Web ページのコンテンツ全体が含まれます。