finagle/finch

Better errors for missing/wrong JSON properties

开放

#264 创建于 2015年5月6日

 (3 条评论) (1 个反应) (1 位负责人)Scala (218 个派生)batch import
featurehacktoberfestready

仓库指标

星标
 (1,594 个星标)
PR 合并指标
 (30 天内没有已合并 PR)

描述

It would be nice if we could better understand what's wrong with an incoming JSON body and throw a reasonable error about it. For now, we throw NotParsed(BodyItem, ....). Would be nice if we could promote BodyItem to a case class BodyItem(name: String) and wrap missing/wrongly decoded properties in it.

This is only about the cases when JSON is decoded directly to a case class: body.as[User]. I believe, end users should handle this manually (with custom exceptions like NotFoundJsonProperty) when dealing with raw JSON types directly: body.as[Json] and then parsing them with AST API provided by a JSON library.

See discussion in #261 started by @lderks.

贡献者指南