Expressjs-middleware
ExpressJS-ミドルウェア
ミドルウェア関数は、* requestオブジェクト(req)、 responseオブジェクト(res)、およびアプリケーションの要求/応答サイクルの次のミドルウェア関数にアクセスできる関数です。 これらの関数は、要求本文の解析、応答ヘッダーの追加などのタスクの *req および res オブジェクトを変更するために使用されます。
ここに動作中のミドルウェア機能の簡単な例があります-
上記のミドルウェアは、サーバー上のすべての要求に対して呼び出されます。 したがって、すべての要求の後、コンソールに次のメッセージが表示されます-
特定のルート(およびそのすべてのサブルート)に制限するには、そのルートを app.use() の最初の引数として指定します。 例えば、
これで、 '/things’のサブルートを要求するたびに、時間を記録します。
ミドルウェア呼び出しの順序
Expressのミドルウェアで最も重要なことの1つは、ファイルに書き込まれる/含まれる順序です。ルートの一致も考慮する必要があるため、実行される順序。
たとえば、次のコードスニペットでは、最初の関数が最初に実行され、次にルートハンドラー、最後に関数が実行されます。 この例では、ルートハンドラの前後にミドルウェアを使用する方法をまとめています。また、ルートハンドラーをミドルウェア自体として使用する方法。
このコードを実行した後に「/」にアクセスすると、応答が Middle としてコンソールに表示されます-
次の図は、ミドルウェアについて学んだことをまとめたものです-
独自のミドルウェアの作成方法を説明したので、最も一般的に使用されているコミュニティ作成のミドルウェアについて説明します。
サードパーティのミドルウェア
Expressのサードパーティミドルウェアのリストは、http://expressjs.com/en/resources/middlewarel [こちら]から入手できます。 以下は、最も一般的に使用されるミドルウェアの一部です。また、これらを使用/マウントする方法を学びます-
ボディパーサー
これは、ペイロードが添付されているリクエストのボディを解析するために使用されます。 ボディパーサーをマウントするには、 npm install --save body-parserを使用してインストールし、マウントするには、index.jsに次の行を含めます。
body-parserで利用可能なすべてのオプションを表示するには、githubページにアクセスしてください。
cookie-parser
_Cookie_ヘッダーを解析し、req.cookiesにcookie名をキーとするオブジェクトを設定します。 Cookieパーサーをマウントするには、npm install --save cookie-parserを使用してインストールし、マウントするために、index.jsに次の行を含めます-
エクスプレスセッション
指定されたオプションでセッションミドルウェアを作成します。 セッションのセクションでその使用法について説明します。
ExpressJSには他にも多くのサードパーティミドルウェアがあります。 ただし、ここでは重要なもののみを説明しました。