【发布时间】:2021-06-05 15:56:35
【问题描述】:
我有一个通过 HTTP 调用 TensorFlow 服务的 scala 服务。 我正在尝试使用 circe 将 None 值编码为 NaN 作为 JSON(TensorFlow 的预期方式),但是在编码对象后我得到“null”
假设我有以下需要使用 circe 序列化为 JSON 对象的案例类:
case class MyRequest(instance: Option[Double])
object MyRequest extends CirceDefaults {
implicit val autoEncoderRequestEncoder: Encoder[MyRequest] = { (myRequest: MyRequest) =>
myRequest.instance match {
case Some(value) => Json.fromDouble(value).asJson
case None => None.asJson
}
}
}
所以 None.asJson 编码为“null”而不是 NaN 并且我从 tensorflow 服务收到错误:
错误:无效参数:JSON 值:“null”类型:字符串不是预期类型:float”
任何帮助将不胜感激。
【问题讨论】:
标签: java json scala tensorflow circe