makemehapi
Version:
Self guided workshops to teach you about hapi.
44 lines (34 loc) • 1.59 kB
Markdown
'`/foo/bar/baz/file.html`'へのリクエストを、あるディレクトリに存在する
ファイルへルートするサーバーを作成しましょう。例えば、'`public/file.html`'
にルートします。このファイルは以下の内容を持ちます。
```html
<html>
<head><title>Hello Directories</title></head>
<body>
Hello Directories
</body>
</html>
```
-----------------------------------------------------------------
## ヒント
サーバーが静的なコンテンツを提供するために、前回のエクササイズと同様、
`inert`モジュールを`require`し、`register`する必要があるでしょう。
ハンドラは以下のように、ディレクトリパスをもつオブジェクトとして宣言
することが出来ます。
```js
handler: {
directory: { path: './public' }
}
```
ディレクトリハンドラを使用するルートは、パス(URL)文字列の最後にパス
パラメータを含めなければなりません。
ルートに設定すパスは、実際のファイルシステムのディレクトリ構造に
一致している必要はありません。また、パラメータ名は何でも構いません。
```js
path: "/path/to/somewhere/{param}"
```
[注意]
実際にはプログラムディレクトリの中にある`public`ディレクトリへの
絶対パスを指定する必要があるでしょう。このパスを取得するために、
`path`コアモジュールの`join()`関数、及びグローバル変数の`__dirname`
が必要となるでしょう。