0
我試圖執行驗證規則,即輸入Json中的時間戳必須具有指定的時區,使用格式DateTimeFormatter.ISO_OFFSET_DATE_TIME
。當輸入不正確時,我想返回一條指示格式不正確的消息。Play-Json解析日期時間字符串以讀取[Instant]
這段代碼工作在預期的格式解析數據:
implicit val instantReads = Reads[Instant] {
js => js.validate[String].map[Instant](tsString =>
Instant.from(OffsetDateTime.parse(tsString, DateTimeFormatter.ISO_OFFSET_DATE_TIME))
)
}
但拋出一個DateTimeParseException
如果格式錯誤。
我該如何修復它以返回JsError("Wrong datetime format")
而不是拋出異常?