express中staticミドルウェア


urlを入力した後に、cssjsexpress、ファイルなどのサービス側の静的ファイルに直接アクセスするには、これらの静的ファイルの位置を知る必要があります.express.staticフレームワークでは、Staicミドルウェア関数が実装されます.expressは、Staicに組み込まれたミドルウェア関数であり、静的サービスに基づいて静的ファイルにサービスを提供する.serve-static関数はserve-staticモジュールにカプセル化され、serveStaticモジュールが投げ出したstaticreq.url方法である.上記の注釈は、ミドルウェア関数が所与のルートディレクトリのファイルにサービスを提供する方法の役割を説明し、サービスするファイルは、next()と提供されるルートディレクトリとを結合することによって決定される.ファイルが見つからない場合、モジュールはhttp://127.0.0.1:8888/public/images/111.jpgを呼び出して次のミドルウェアに移動するように変更されます.くだらないことは言わないで、実際に操作してください.
ブラウザアドレスバー入力req.urlでは、サービス側の静的ピクチャにアクセスできることが分かった.
ミドルウェア関数がサービスするファイルは、http://127.0.0.1:8888/を提供されるルートディレクトリと組み合わせることによって決定され、すなわちhttp://127.0.0.1:8888/がアクセスするのはミドルウェアが指定したディレクトリである.上図のhttp://127.0.0.1:8888/はプロジェクトのルートディレクトリに対応しているので、public/images/111.jpgの後にexpress.staticを加えると静的ピクチャにアクセスできます.
複数の静的リソースディレクトリを使用する場合は、Expressミドルウェア関数を複数回呼び出し、express.staticミドルウェア関数を使用して静的ディレクトリを設定する順序でファイルを検索します.express.static関数で提供されるファイルの仮想パス接頭辞を作成するには(パスがファイルシステムに実際に存在しない場合は、静的ディレクトリのインストールパスを指定します.
このうち、/imagesおよび/filesは指定された仮想ディレクトリであり、サービス側には実際には存在しない.
参照リンク:https://expressjs.com/zh-cn/starter/static-files.html