0

データを集約するサービスを作成しており、未知の JSON ドキュメントを読み取ることができる必要があります。次のように定義されたパイプラインがあります。

  private def pipeline = (
       addHeader("Accept", "application/json")
    ~> sendReceive
    ~> unmarshal[JsObject] // Need this to work for JsObject or JsArray //
    ~> recover
  )

これは JsObject では機能しますが、JsArray では機能しません。JsArray に変更すると、(もちろん) JsObject では機能しません。私の回復メソッドは JsObject を返します。

これを JsValue として定義するか、ルート形式を適用できるようにしたいのですが、JsValue の場合、次のコンパイラ エラーが発生します。

タイプ Spray.httpx.unmarshalling.FromResponseUnmarshaller[spray.json.JsValue] の証拠パラメーターの暗黙的な値が見つかりませんでした

そしてルートフォーマットもエラーです。

必要なことを達成する方法がわかりません。助けていただければ幸いです。

4

2 に答える 2