2016-10-26 3 views
0

Ich versuche Scala/Play zu lernen, also habe ich eine Beispiel-API erstellt, die WSRequest verwendet, um eine Verbindung zu GitHub herzustellen und einige Informationen basierend auf der Benutzer-ID zurückgibt. Ich kann diese Reaktion auf JsValue konvertieren, indem Sie:Wie behandelt man JsValue in Scala/Play

val response: JsValeu = result.json 
Ok(json) 

Ich habe Probleme beim Versuch, die JsValue, zum Beispiel Filterwert zu manipulieren, basierend auf einigen Kriterien, etc? Muss ich es in ein JsObject umwandeln? Ich habe mir die Play-Dokumentation angeschaut, aber ich kann mir nicht vorstellen, wie ich das machen soll.

Was ist der Ansatz beim Umgang mit JsValue?

Dank

+3

beginnen mit https://www.playframework.com/documentation/2.5.x/ScalaJson und beschreiben genauer, was Sie –

+0

Ok tun wollen (json) .as ("application/javascript; charset = utf-8") – ALMEK

+0

Wo ist Ihr Problem, möchten Sie Ihre Antwort val in eine Fallklasse konvertieren? und Sie wissen nicht, wie Sie JSON-Lese-/Schreib-/Formatkombinatoren verwenden – ALMEK

Antwort

1

JsValue jede Art von JSON-Dateneinheit bedeutet, einschließlich der Objekte, Zahlen, Strings usw.

Wenn Sie in einem JSObject filtern Werte wollen, dann werden Sie zu „cast“ haben Dein JsValue in ein JsObject. wie:

val jsonObject: JsObject = response.as[JsObject]

Dann können Sie das Objekt mutieren, wie Sie möchten.

Lesen Sie die Dokumentation zu JsObject und JsValue, um herauszufinden, wie Sie den Rest Ihrer Aufgaben erledigen können.