6

特定のパス パターンに一致させるためにakka ディレクティブを使用しています。

/item/quantity

例は

/apples/100
/bananas/200

可能な項目 (「りんご」、「バナナ」など) は事前にわからないため、使用する項目をハードコーディングすることpathはできません。

しかし、パスの先頭を抽出する PathMatcher が見つかりません。私はフォームの何かを探しています

val route = 
  get {
    path(PathHeadAsString) { item : String =>
      path(IntNumber) { qty : Int =>
        complete(s"item: $item quantity: $qty")
      } ~ complete("no quantity specified")
    } ~ complete("no item specified")
  }

どこ

Get("/apples/100") ~> route ~> check {
  responseAs[String] shouldEqual "item: apples quantity: 100"
}

パスの最初のセグメントを抽出する方法はありますか?

path(segment)数量がパスにある場合、マッチャーは一致しません。

path(segments)もちろん、パス要素を取得するために使用できますList[String]が、リストの先頭と末尾を手動で抽出する必要があり、エレガントではないようです。

事前のご検討とご対応をよろしくお願いいたします。

4

1 に答える 1