akka/akka-http
Provide Segments path directive that matches 0 to n segments regardless of leading slashes
Offen
#879 geöffnet am 20.02.2017
1 - triagedhelp wantedt:routing
Repository-Metriken
- Stars
- (1.311 Sterne)
- PR-Merge-Metriken
- (Durchschn. Merge 1T 10h) (2 gemergte PRs in 30 T)
Beschreibung
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