1
json과 case 클래스를 구문 분석하기 위해 argonaut를 사용하고 있습니다.json 값 "aaa, bbb"를 argonaut를 사용하여 "Seq [String]"으로 변환하는 방법은 무엇입니까?
JSON :
{
"name" : "Mike",
"email" : "[email protected], [email protected]"
}
스칼라 : 오류가
case class User(agentName: String, emails: Seq[String])
object User {
implicit def DecodeJson: DecodeJson[User] =
casecodec2(User.apply, User.unapply)("name", "email")
}
코드를 컴파일 할 수 없다
:Error:(17, 65) could not find implicit value for evidence parameter of type
argonaut.EncodeJson[Seq[String]]
casecodec2(User.apply, User.unapply)("name", "email")
그것을 해결하기 위해 어떻게 내가 [email protected], [email protected]
을 구문 분석 할 수 Seq("[email protected]", "[email protected]")
? 당신이 정말로 단지 디코더를 필요로하는 경우,
case class User(agentName: String, emails: Seq[String])
object User {
implicit val CodecJson: CodecJson[User] = casecodec2[String, String, User](
(n, e) => User(n, e.split(", ")),
u => Some((u.agentName, u.emails.mkString(", ")))
)("name", "email")
}
을 또는 : 당신은 구문 분석 JSON에 다음과 같은 작업을 수행해야하는 경우가 그것을 할 수 있도록 casecodec2
에