Play with Scala のこれらの Json シリアライザーは、私を夢中にさせています。
何十もの投稿、チュートリアル、ドキュメントを読みました。読み取り/書き込み/フォーマットのオーバーライドを実装する4つの異なる方法を試しましたが、すべて役に立ちませんでした。
そこで、カスタム タイプをやめて、非常にシンプルにすることにしました。
def suggest = Action(parse.json) {
request =>
request.body.validate[(String, String)].map {
case (suggestion, categories) => Ok("You suggested " + suggestion + " for categories " + categories)
}.recoverTotal {
e => BadRequest(JsError.toFlatJson(e))
}
}
そして、件名に記載されているようにエラーが返されます。
このような基本的な本体にカスタムの読み取り/書き込み/フォーマットの実装を提供する必要は本当にありますか?
サンプルの入力本文は次のようになります。
{"suggestion":"add generics", "categories":"request;language;updates"}
私が見逃している簡単なことは何ですか?