Node.jsフレームワークExpressを使いWebサーバアプリの作成

Node.jsのフレームワークExpressを使い、Webサーバサンプルを作成します。

1.本稿の実行環境
(1)ホストOS
 Windows 10 Pro
(2)仮想環境(VirtualBox)
 ・ゲストOS:CentOs8(Red Hat 64-bit
 ・nodejs、及びnpmはインストール済

2.Expressを使ったWebアプリケーションの作成
 ExpressはNode.jsのMVCフレームワーク。EJSはテンプレートエンジンで、EJSを利用することでテンプレートのデザイン部分とデータを扱うロジック部分を分けることができる。
(1)アプリケーションフォルダの作成
 作成したフォルダに入り下記のコマンドを実行して、npmの設定ファイルであるpackage.jsonを生成する。
 ここではフォルダをExpress-appとする。
 $ mkdir Express-app
 $ cd Express-app
 $ npm init -y

(2)Expressのインストール
 $ npm install express

(3)テンプレートエンジンEJSのインストール
 $ npm install ejs

Express を使用して Node.js のプログラムを作成
 前記(1)、(2)、(3)の操作で下記フォルダ、ファイルが作成される。

(4)プログラムの作成
node-sample14.js

(解説)
・Expressオブジェクトのget()メソッドを使用してGETリクエストを処理する。引数にはアプリケーションが指定されたルート(エンドポイント)とHTTPメソッドへのリクエストを受け取ったときに呼び出されるコールバック関数(ハンドラ関数とも呼ばれます)を指定する。
・コールバック関数では、responseオブジェクトのend()メソッドでコンテンツを書き出す。

(5)サーバの起動
$ node node-sample14.js

(6)仮想マシンのブラウザで確認
http://127.0.0.1:8000/

3.Expressとテンプレートエンジンを使ったWebアプリケーションの作成
 前項2.のプログラムではresponseオブジェクトのsend()メソッドでコンテンツを書き出したが、本項ではテンプレートファイルをコンテンツとする。
(1)プログラムの作成
node-sample15.js

(解説)
・コールバック関数では、responseオブジェクトのrender()メソッドを使いレンダリングを行う。

(2)テンプレートファイルを作成
 views/hello.ejs

(3)サーバの起動
$ node node-sample15.js

(4)仮想マシンのブラウザで確認
 http://127.0.0.1:8000/

The end