gpt4 book ai didi

java - 使用 Play 将验证错误作为 JSON 返回!框架

转载 作者:塔克拉玛干 更新时间:2023-11-03 04:02:10 25 4
gpt4 key购买 nike

我想构建一个应用程序,其中通过 Ajax 提交表单而无需重新加载整个页面。要显示服务器端验证错误,服务器应将验证错误作为 JSON 和适当的 HTTP 状态 (400) 返回。

我怎样才能用 Play!框架?

最佳答案

在 Play Framework 2.x 和 Scala 中你可以使用这个例子:

import play.api.libs.json._

case class LoginData(email : String, password: String)

implicit object FormErrorWrites extends Writes[FormError] {
override def writes(o: FormError): JsValue = Json.obj(
"key" -> Json.toJson(o.key),
"message" -> Json.toJson(o.message)
)
}

val authForm = Form[LoginData](mapping(
"auth.email" -> email.verifying(Constraints.nonEmpty),
"auth.password" -> nonEmptyText
)(LoginData.apply)(LoginData.unapply))

def registerUser = Action { implicit request =>
authForm.bindFromRequest.fold(
form => UnprocessableEntity(Json.toJson(form.errors)),
auth => Ok(Json.toJson(List(auth.email, auth.password)))
)
}

我看到这个问题标有 java 标签,但我想这可能对 Scala 开发人员有用。

关于java - 使用 Play 将验证错误作为 JSON 返回!框架,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7598186/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com