こんにちは。GMSのバックエンドエンジニアの@yuyasan-goです。 Node.js のWeb Frameworkとしては古株ではあるものの、利用されている方もまだまだ多いExpress関連についてです。 軽量フレームワークであり新規導入のしやすさがメリットですが、サービスも成長して徐々にコードベースも大きくなるにつれて、エラー処理や同様処理が増えてくるケースも目にすることも多くなってくるのではないでしょうか。 今日はそういった状態になってきた際の「DRY原則に効く!Node.js+ExpressによるAPIのMiddleware化した」話について紹介します。 全体構成 全体構成の概要図はこのような形となっています。 バックエンドの主な技術スタックは、Node.js + Express + MySQL(Amazon Aurora) + DynamoDBを採用しています。 構成の主な機能