The path without the query, still percent-encoded (/api/books/978-0). Behind a server.context-path, filters and handlers see the path without that prefix.
/api/books/978-0
server.context-path
@override String get path => uri.path.isEmpty ? '/' : uri.path;