ich diese Lösung implementiert haben: https://stackoverflow.com/a/23115778/4631376 (die zweite mit der impliziten Klasse) und ich versuche, „ci“ mit einem String-Argument zu verwenden, anstatt eine ZeichenketteScala: ein String-Argument mit einem impliziten erwarten String-Kontext mit
implicit class CaseInsensitiveRegex(sc: StringContext) {
def ci = ("(?i)" + sc.parts.mkString).r
}
def Refiner(uid: String) = new ActionRefiner[Input, Output] {
override protected def refine[A](request: Input[A]): Future[Either[Result, Output[A]]] = {
uid match {
case ci"${request.auid}" => Future.successful(Right(new Output[A](request.auid, request)))
}
}
}
aber es scheint nicht zu Werke, da der String-Kontext "sc" ist leer. und es sollte den Inhalt von "request.auid"
enthalten es funktioniert gut mit Literal-Strings (Senden des Inhalts wie "abcabc").
Gedanken?
Bitte fügen Sie den vollständigen Code ein, um Ihr Problem zusammen mit der erwarteten Eingabe/Ausgabe und allen vorhandenen Fehlermeldungen zu reproduzieren. – Daenyth