Node.js で簡単なアプリケーションを構築する

Node.js で簡単なアプリケーションを構築するには、通常次の手順が必要です:

  • Node.js のインストール
  • プロジェクトディレクトリの設定
  • プロジェクトの初期化
  • サーバーの作成
  • リクエストとレスポンスの処理

次に、Node.js を使って簡単な HTTP アプリケーションを構築する方法を段階的に紹介します。

1、Node.js のインストール

まず、システムに Node.js と npm がインストールされていることを確認します。コマンドラインで次のコマンドを入力して確認できます:

node -v
npm -v

まだインストールされていない場合は、次を参照してください:Node.js のインストールと設定。

2、プロジェクトフォルダの作成

ターミナルでプロジェクトフォルダを作成しmy-first-node-appそのフォルダに移動します:

mkdir my-first-node-app
cd my-first-node-app

3、プロジェクトの初期化

次のコマンドを実行してnpm initpackage.json ファイルを生成します。これにはプロジェクトの設定情報が含まれます。

次のコマンドを実行し、プロンプトに従って情報を入力します(Enter キーを押してスキップすることもできます):

npm init -y

package.json ファイルを次の内容に変更します:

{
  "name": "my-first-node-app",
  "version": "1.0.0",
  "main": "app.js",
  "scripts": {
    "start": "node app.js"
  },
  "dependencies": {}
}

4、アプリケーションのエントリファイルの作成

プロジェクトのルートディレクトリにmy-first-node-app次のファイルを作成しますapp.jsこのファイルはアプリケーションのエントリファイルであり、サーバーの設定とリクエストの処理に使用されます。

5、サーバーコードの作成

app.js ファイルに、簡単な HTTP サーバーを作成するための次のコードを記述します:

例

const http = require('http');

// サーバーを作成
const server = http.createServer((req, res) => {
  // HTTPレスポンスのステータスコードとヘッダー情報を設定
  res.writeHead(200, {
    // コンテンツタイプを HTML に設定し、文字セットを UTF-8 に指定します。これで中国語が文字化けしません
    'Content-Type': 'text/html; charset=utf-8'
  });

  // レスポンスボディを送信
  res.end('<h1>Hello, World!</h1><p>これは私の初めての Node.js アプリです。</p>');
});

// ポートをリッスン
const PORT = 3000;
server.listen(PORT, () => {
  console.log(`Server is running on http://localhost:${PORT}`);
});

6、サーバーの実行

プロジェクトのルートディレクトリで次のコマンドを実行して、サーバーを起動します:

npm start

コンソールに次のような情報が出力されます:

Server is running on http://localhost:3000

7、サーバーへのアクセス

ブラウザを開いて http://localhost:3000 にアクセスすると、ページに次のように表示されます:

サーバーが正常に動作していることを示しています。

8、ルーティングの追加

異なるリクエストパスを処理するために、サーバーコードに簡単なルーティングを追加できます。例:

例

const http = require('http');

const server = http.createServer((req, res) => {
  if (req.url === '/') {
    res.writeHead(200, { 'Content-Type': 'text/plain' });
    res.end('Welcome to the homepage!');
  } else if (req.url === '/about') {
    res.writeHead(200, { 'Content-Type': 'text/plain' });
    res.end('This is the about page.');
  } else {
    res.writeHead(404, { 'Content-Type': 'text/plain' });
    res.end('404 Not Found');
  }
});

const PORT = 3000;
server.listen(PORT, () => {
  console.log(`Server is running on http://localhost:${PORT}`);
});

上記の手順により、簡単な Node.js アプリケーションを構築し、異なるリクエストパスを処理できるようになりました。

この基本アプリケーションは、データベースサポートの追加や、Express フレームワークを導入して複雑なルーティングを処理するなど、さらに拡張できます。より複雑なプロジェクトの基盤となります。

その他の拡張