scala - 使用 Play Json 将可选的 json 字段转换为选项?

标签 scala playframework

我想做这样的事情:

(request.body \ "optional-integer").toOption[Int]

如果正文中没有optional-integer 字段,我将得到一个None,否则为整数值。 有什么惯用的方法吗?

最佳答案

作为@Mikesname's comment说,

(request.body \ "optional-integer").asOpt[Int]

应该做的工作。这使用 JsValue .asOpt(),其中

Tries to convert the node into a T.

比较 the JSON basics manual, part Using JsValue.as/asOpt

val nameOption = (json \ "name").asOpt[String]
// Some("Watership Down")

val bogusOption = (json \ "bogus").asOpt[String]
// None

关于scala - 使用 Play Json 将可选的 json 字段转换为选项?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38853404/

相关文章:

scala - 在Scala中,如何在不使用var的情况下跟踪运行总计?

java - 如何使用 Play Framework 上传多个文件?

java - 玩!无法将 java 列表转换为 scala 列表

playframework - 将 Spring Social 与 Play 集成

playframework - Tapestry5 与 Play 框架

performance - sbt 高 CPU 使用率与 ~run

java - JCEF ICU 检查失败

android - Scala + Gradle + AndroidStudio 0.8.+

scala - 如何使用spark将来自kafka主题的流数据写入hdfs?

scala - Unresolved 依赖 SBT org.scala-sbt#sbt_2.9.1;0.12.1 : not found, Play 示例