◆ req.url が whatwg URL に変わってから path が取得できない
◆ req.path も pathname のことなので search が含まれない
◆ hapi の request オブジェクト内に保持していないみたいなので Node.js の生の request オブジェクトから取得

前回とも関連します
サーバサイドではリクエストされたパスを知りたいことが頻繁にあるのですが hapi ではそれが少し面倒です

以前の hapi は req.url が Node.js の URL パーサを使っていたので

console.log(req.url.path)

で 「/foo?bar=baz」 のようなものを取得できました

しかし 最近の hapi は req.url に使うパーサが whatwg URL に変わりました
嬉しい部分もあるのですが req.url.path は存在しません
自分で pathname と search を結合するしかないです

console.log(req.pathname + req.search)

リクエストされるパスに # は含まれないので 2 つを結合するだけですが それでも毎回は面倒です

一応 hapi には req.path というプロパティも用意されています
しかし これは pathname を表すものなので search 部分は含まれません
hapi のプロパティとして取得はできないですが Node.js の生の request オブジェクトには存在する文字列です
なので req.raw.req で生の request オブジェクトにアクセスすれば取得できます

console.log(req.raw.req.url)

結合するよりも短く書けるので とりあえずこれを使うかなと言う感じですが フレームワークならそれくらい用意しておいてほしいですよね
特に昔は使えた機能なんですから