akka/akka-http
Provide Segments path directive that matches 0 to n segments regardless of leading slashes
Aperta
#879 aperta il 20 feb 2017
1 - triagedhelp wantedt:routing
Metriche repository
- Star
- (1311 stelle)
- Metriche merge PR
- (Merge medio 1g 10h) (2 PR mergiate in 30 g)
Descrizione
The existing Segments PathMatcher is mostly useful when trailing slashes are enforced everywhere. When no trailing slashes it is a bit more complicated right now to get a list of segments.
The implementation can be basically this:
def pathSegments: Directive1[List[String]] = (Slash ~ Segment).repeat(0, 128, PathMatchers.Neutral) ~ PathEnd // or PathEndOrSingleSlash?
It would allow to use
pathPrefix("tree") {
pathSegments { segments =>
...
}
}
which would match all of
/tree/tree/abc/tree/abc/def
but not
/tree//tree/abc/
/cc @lihaoyi