blog

Nuxt.js serverMiddleware プロパティ

Nuxtは内部でConnectインスタンスを生成するので、ミドルウェアをスタックに登録することができ、外部サーバーを必要とせずにAPIなどの追加ルートを提供する機会を持つことができます。接続自体がミド...

Mar 20, 2020 · 2 min. read
Share this

サーバサイドレンダリングミドルウェア 属性タイプ: ArrayItems: String or Object or Function Nuxtは内部で接続のインスタンスを作成するため、ミドルウェアをスタックに登録し、外部サーバを必要とせずにAPIなどの追加経路を提供する機会を持つことができます。接続自体がミドルウェアであるため、登録されたミドルウェアは nuxt の起動のため、または express-template のようなプログラム的な使い方をするミドルウェアのために使用することができます。addServerMiddleware() を使用してサーバーミドルウェアを設定することもできます。

サーバサイドレンダリングのミドルウェアとミドルウェアの違い!Vueがクライアント側やSSRでルートごとに呼び出すroutesミドルウェアと混同しないでください。serverMiddlewareは、サーバ側で動作するvue-server-rendererにすぎず、APIリクエストの処理やアセットの提供など、サーバ固有のタスクに使用できます。

使用法 ミドルウェアが String の場合、Nuxt.js は自動的に解析しようとします。

例えば

import serveStatic from 'serve-static'
export default {
 serverMiddleware: [
 // Will register redirect-ssl npm package
 'redirect-ssl',
 // Will register file from project api directory to handle /api/* requires
 { path: '/api', handler: '~/api/index.js' },
 // We can create custom instances too
 { path: '/static2', handler: serveStatic(__dirname + '/static2') }
 ]
}

ヒント ミドルウェアにすべてのルートを登録させたくない場合、特定のパスを持つオブジェクトを使わなければなりません!

カスタムサーバーサイドレンダリングミドルウェア カスタムミドルウェアを記述することも可能です。詳細は Connect Docs を参照してください。

Middleware (api/logger.js):
export default function (req, res, next) {
 // req ノード.js http request  
 console.log(req.path)
 // res ノード.js http response  
 // nextは次のミドルウェアを呼び出す関数である
 // あなたのミドルウェアが最終的な実装でない場合は、最後にnextを呼び出すことをお忘れなく!
 next()
}

Nuxt コンフィギュレーション .

serverMiddleware: [
 '~/api/logger'
]
Read next

Elasticsearchの決定版

インデックス作成 vi. 検索 vii. 集計 viii. まとめ ix. 分散 x. 結論 i. 空クラスタ ii. クラスタの健全性 iii. インデックスの追加 iv. フェイルオーバー v. 水平方向へのスケーリング vi. さらなるスケーリング vii. 障害への対処 i. ...

Mar 20, 2020 · 2 min read