我的请求中有一个可选字段:
case class SearchRequest(url: String, nextAt: Option[Date])
我的协议是:
object SearchRequestJsonProtocol extends DefaultJsonProtocol {
implicit val searchRequestFormat = jsonFormat(SearchRequest, "url", "nextAt")
}
如何将 nextAt 字段标记为可选,以便正确读取和接受以下 JSON 对象:
{"url":"..."}
{"url":"...", "nextAt":null}
{"url":"...", "nextAt":"2012-05-30T15:23Z"}
我实际上并不真正关心 null 案例,但是如果您有详细信息,那就太好了。我正在使用 spray-json,并且认为如果原始 JSON 对象上不存在该字段,则使用 Option 会跳过该字段。