1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

Webの勉強はじめてみた その29 〜Webフレームワーク〜

Posted at

N予備校「プログラミング入門Webアプリ」を受講しています。
今回から第4章になります。

Expressの導入

Webフレームワークとして、`Express`を使います。 雛形を作るための`express-generator`をインストール
yarn global add express-generator@4.16.0

テンプレートエンジンをpugに設定して、カレントディレクトリに雛形を作成する

express --view=pug .

package.jsonの中を見ると、yarn startで起動できることがわかる。

package.json
"scripts": {
    "start": "node ./bin/www"
  }

Portの設定

www
/**
 * Get port from environment and store in Express.
 */

var port = normalizePort(process.env.PORT || '3000');
app.set('port', port);

デフォルトでは3000番。
dockerと同じ設定にするとスムーズ。

PORT=8000 yarn start

コンソールにログを出す時は、環境変数のDEBUGを利用する。

DEBUG=express-test:* PORT=8000 yarn start

helmetモジュール

:::note Express の機能を拡張し HTTP において脆弱性となるヘッダなどを取り除いて安全に使える :::

デベロッパーツールで簡単に確認できてしまう情報があるため。

yarn add helmet@4.6.0

helmetモジュールをuse関数で登録する。

app.js
var express = require('express');
var helmet = require('helmet');
var app = express();
app.use(helmet());

まとめ

:::note Express というフレームワークは該当するパスや条件に関して、Router オブジェクトのような処理を実行するオブジェクトを複数登録し逐次処理していく仕組みで作られている。 この逐次処理を行っていく関数のことをハンドラという。 :::

フレームワークと言われると、.NET Frameworkがパッと思いつく。jQueryなんかもそうなのかな。
何にしても細かいことを気にしないで済むというのはとてもいい。
ただある程度は理解して使っていきたい。

1
0
2

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?