【エクササイズ】express.Routerを使って2ページ分のルーティングを実装する

課題
  • 「express」を使ったサーバー起動
  • 「express.Router」を使った2ページ分のルーティング実装
  • GitHubに用意した課題の内容を確認して、課題クリアがこの記事でのゴール

課題内容は以下の課題レポジトリに記述しています。

課題レポジトリ

GitHub : js_excercise_for_backend_5

今回作成する課題の完成形のイメージは以下のとおりです。(※画像をクリックすると別タブで画像が開きます)

今回の課題の完成形今回の課題の完成形

課題解決するために参考になる資料

expressをインストールする【Node.jsのフレームワーク】

あわせて読みたい
expressをインストールする【Node.jsのフレームワーク】今回から「express」について学習していきます。expressはNode.jsで利用できるWebフレームワークです。スライド記事ではexpressの簡単な説明と、expressをインストールして、開発の準備をするところまで解説します。...

今回は、Node.jsで利用できるWebフレームワークの1つである「express」を使います。

「express」のインストール方法は上記記事で解説しているのでそちらを参考にしていただけたらと思います。

【express】サーバーを起動する【ホスト・ポート番号とは?】

あわせて読みたい
【express】サーバーを起動する【ホスト・ポート番号とは?】今回はexpressを使って「Hello World」を出力するWebサーバーの起動方法を学習します。また、サーバーの起動後にブラウザに入力する「localhost:3000」の意味についても解説します。「ホスト」「ポート番号」はサーバーの基本知識となるので合わせて学習しましょう!...

expressをインストールしただけでは、まだWebサーバーを起動することは出来ません。

expressを使って、サーバーを起動するコードを実装する必要があります。

上記記事では、ブラウザを使って「localhost:3000」にアクセスしたときに「Hello World」をブラウザに表示する実装方法を解説しています。

また、今回の課題ではポート番号をあえて「3001」で起動するように指定しています。

ポート番号とは何かについても上記記事で解説しているので、ポート番号がわからない方も上記記事でふりかえると良いでしょう。

nodemonの導入【コード修正時にサーバーを自動で再起動する】

あわせて読みたい
nodemonの導入【コード修正時にサーバーを自動で再起動する】今回はnodemonについて学習します。nodemonはexpressの機能ではありませんが、nodemonを使うことで効率よく開発できるようになります。通常はサーバー起動時にコードを修正すると手動でサーバーを再起動して修正を反映させる必要がありますが、nodemonを使うことでサーバーの再起動を自動化できます。...

サーバー起動中にソースコードを修正した場合は、サーバーを再起動しないと修正コードが反映されません。

反映されない理由は、サーバーは「サーバー起動時に読み込んだプログラム」を使い続けるためです。

そのため、サーバー起動中にコードを修正したとしても、修正以前のコードを使い続けるということになります。

しかし、修正する度にサーバーを手動で再起動するのは面倒です。

手動ではなく、コードを修正する度にサーバーを再起動させる方法は無いのでしょうか?

結論をいうと、修正するたびにサーバーを自動で再起動させる方法があります。

それが上記記事でも解説している「nodemon」というライブラリを使うことです。

nodemonのインストール方法や、使い方については上記記事で解説しているので、詳しく知りたい方は上記記事を参考にしていただけたらと思います。

【express】2ページ分のルーティング処理を実装する

あわせて読みたい
【express】2ページ分のルーティング処理を実装する今回はexpressでコードを整理しながらルーティング処理を実装する方法を学習します。今回新たに覚えるのは「express.Router」と「app.use」の2つになります。ルーティング処理が増えてきた、つまりページ数が増えてきたときにはルーティング処理を別ファイルにわけることでコードが管理しやすくなります。...

expressを使って、複数ページのルーティングを実装したいときは「express.Router」を使うと便利です。

「express.Router」自体はexpressオブジェクトに含まれているので、新たにライブラリをインストール必要はありません。

「express.Router」の使い方を知りたい方は上記記事で解説しているのでそちらを参考にしていただけたらと思います。

質問・答え合わせ受け付けてます

課題に関して質問や答えの確認をしたい方はお気軽にご連絡をいただけたらと思います。

お問い合わせ・TwitterのDM・LINE@で受けつけています。TwitterのDM、LINE@のほうが早く気づけるので早めに返信できるかと思います。

あわせて読みたい
【絶賛受付中】プログラミング・Webの相談お気軽にどうぞ!
【絶賛受付中】プログラミング・Webの相談お気軽にどうぞ!プログラミングやWebで困っていることに対して何でも質問受け付けています。「こんなこと質問しても大丈夫かな」と思っている方のために過去にどんな質問があったのか一例で挙げているので参考にしていただけたらと思います。...
【3つの特典付き】Webエンジニアに必要な基礎スキルを体系的に効率良く身につけたいですか?

LINE登録で無料特典を受け取る

次のような方向けに、学習をサポートするコンテンツを無料プレゼントしています。

  • Webエンジニアになりたいけど何から学習を始めれば良いかわからない
  • 今まで独学で頑張ってきたけど、独学に限界を感じてきた
  • プログラミングは出来るけど、大きめのコードが書けない

「プレゼント詳細が知りたい」「プレゼントを受け取りたい」といった方は、以下のボタンをクリックして詳細ページをご確認ください。

無料特典を受け取る