世の中に沢山の「ミドルウェア」が存在しますが、ここで紹介するミドルウェアは、あるメインロジックを大きく変更することなく、その前後に挟む処理のことを指します。 アプリケーションを作成する場合に、メインロジックのハンドラを mainHandler として、ミドルウェア A, B, C を使用していた場合の挙動は以下の順序の通りになります。 request -> A -> B -> C -> mainHandler -> C -> B -> A -> response これを意識するためには、Perl Monger にお馴染みの図を覚えるといいでしょう。玉ねぎ内部のそれぞれの層はミドルウェアを表現しています。 http://blog.nomadscafe.jp/2012/01/plackmiddlewareaccesslog.html これを踏まえて Go でまずは、アプリケーションのミドルウェ