Akka-Http 更新收到 json 通过转换为 json 对象

Akka-Http update recieved json by converting to json Object

我正在尝试通过解组收到的 Json 来完成 POST 请求,现在我想在将其提交给 scala 方法

之前更新 json
val route = (path("createDataSets") & post) {
    entity(as[DataSetEntity]) { dataSetEntity: DataSetEntity =>
      complete(createDataSet(dataSetEntity).map(_.asJson))
    }

case class DataSetEntity(id:Option[Long],createDate:Option[String],name:String)

我从 JSON 收到的是 id 和 name 用于 createDate 我需要用当前系统日期更新它在将其传递给方法 createDataSet 之前。 我怎样才能做到这一点?

scala 中的每个 case class 都有方法 copy 并且可以用方法的命名参数调用它,所以总结一下:

val route = (path("createDataSets") & post & entity(as[DataSetEntity])) { dataSetEntity: DataSetEntity =>
  val updatedEntity = dataSetEntity.copy(createDate = Some(java.time.LocalDate.now.toString))
  complete(createDataSet(updatedEntity).map(_.asJson))
}