Express.jsでHello World!

ExpressでHello World! Node.js

サーバーサイドJavaScriptであるNode.jsのフレームワーク【Express.js】を利用して、プログラミングではおなじみのHello World!を表示させたいと思います。

スポンサーリンク

環境

Macを利用されている方が多いかもしれませんが、Windowsで行っています。Macユーザーの方は適宜読み替えてください。

PS C:\> node --v 10.13.0 PS C:\> npm -v 6.7.0

準備

ディレクトリ作成

作業ディレクトリを作成します。ディレクトリ名は任意のもので構いません。

PS C:\> mkdir express-hello-world PS C:\> cd express-hello-world PS C:\express-hello-world> 

初期化

作成したディレクトリに移動したらnpm initを実行して初期化を行います。npm initでは対話形式でpackage.jsonを生成することが可能です。

以下、コマンド実行時の内容となります。entry pointのみapp.jsに変更しています。(慣習だそうです)

PS C:\express-hello-world> npm init This utility will walk you through creating a package.json file. It only covers the most common items, and tries to guess sensible defaults. See npm help json for definitive documentation on these fields and exactly what they do. Use npm install <pkg> afterwards to install a package and save it as a dependency in the package.json file. Press ^C at any time to quit. package name: (express-hello-world) version: (1.0.0) description: entry point: (index.js) app.js test command: git repository: keywords: author: license: (ISC) About to write to C:\express-hello-world\package.json: { "name": "express-hello-world", "version": "1.0.0", "description": "", "main": "app.js", "scripts": {"test": "echo \"Error: no test specified\" && exit 1"}, "author": "", "license": "ISC" } Is this OK? (yes)

これでpackage.jsonが作成されたかと思います

実装

パッケージインストール

npmコマンドにて必要なパッケージをインストールします。今回のHello Worldに必要なパッケージはexpressのみです。

--saveオプションを付けることで、package.jsonのdependenciesにパッケージの情報が記録されます。

PS C:\express-hello-world> npm install express --save npm notice created a lockfile as package-lock.json. You should commit this file. npm WARN express-hello-world@1.0.0 No description npm WARN express-hello-world@1.0.0 No repository field. express@4.16.4 added 48 packages from 36 contributors and audited 121 packages in 4.37s found 0 vulnerabilities

これでexpressのバージョン4.16.4が導入されました。package-lock.jsonが作成されたかと思います。

警告はpackage.jsonにdescriptionとrepository fieldの設定がないために発生しているものです。無視しても問題はありません。

コーディング

ディレクトリにapp.jsファイルを新規作成して以下の内容を記述します。

const express = require('express');
const app = express();

app.get('/', (req, res) => res.send('Hello Express!'));

app.listen(3000, () => console.log('Started.’));

以下解説です。

const express = require('express');
const app = express();

先の手順でインストールしたexpressをモジュールとしてをインポートします。そしてインポートしたexpressモジュールをappに代入しています。ここも慣習としてappが利用されるようです。

app.get('/', (req, res) => res.send('Hello World!'));

appオブジェクトのgetメソッドでは、第一引数に指定したURIへのGETリクエストに対する処理を記述できます。ここではres(response)オブジェクトのsendメソッドを利用し、'Hello World!'という文字列を返しています。

app.listen(3000, () => console.log('Started.’));

listenメソッドを実行し、3000番ポートで待ち受けます。実行時にStarted.とログが表示されるようにしています。

実行

以下のコマンドでapp.jsを起動します。entry pointにapp.jsが指定されているため「node .」でも起動可能です。

PS C:\express-hello-world> node app.js Started.

ブラウザを起動し「http://localhost:3000/」にアクセスしてみましょう。

無事Hello World!と表示されましたね。

まとめ

Node.jsのフレームワークであるExpress.jsでのHello Worldでした。

非常に簡単ですね。様々なモジュールや処理を組み込んでいくことで、中規模程度のWebサービスやAPIサーバーなどの開発が可能となります。

順次記事を書いていきたいと思いますので、これからもよろしくお願いします。

コメント

タイトルとURLをコピーしました