【发布时间】:2014-01-08 00:49:04
【问题描述】:
下面是一个保存用户信息的简单案例类:
import play.api.libs.json._
import play.api.libs.functional.syntax._
case class User(
val username: String,
val password: String
)
...这里是提供序列化/反序列化 User 对象到/从 JSON 的功能的伴随对象:
object User {
implicit val userWrites: Writes[User] = (
(__ \ 'username).write[String] ~
(__ \ 'password).write[String]
)(unlift(User.unapply))
implict val userReads: Reads[User] = (
(__ \ 'username).read[String] ~
(__ \ 'password).read[String] // how do I invoke the password hasher here?
)(User.apply(_, _))
}
假设User 对象应始终包含散列密码,但传入的 JSON 始终提供纯文本...如何增强我的 Reads 以便它在反序列化时调用密码散列器?
【问题讨论】:
-
我希望那些明文密码不是来自某个持久性存储!
-
哦不 ;-) 这只是一个非常非常简单的例子来解释我在寻找什么。
标签: json scala playframework