我的请求中有一个可选字段:
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"}
实际上我并不太在乎空值的情况,但如果有细节,那就更好了。我正在使用spray-json,并且曾经认为如果在原始JSON对象中该字段不存在,使用Option将跳过该字段。