我是新手,所以很难弄清楚一些基本的东西。我正在尝试实现的是 api 身份验证。为了实现它,我在 zentask 示例中实现了类似的身份验证操作,例如 Security trait。
但是当我试图在安全特征中访问请求的 json 主体时,我得到编译器错误说;“值 \ 不是类型参数 A 的成员”
这是身份验证操作;
def withApiAuth[A](bp: BodyParser[A])(f: Request[A] => Result): Action[A] = {
Action(bp) { request =>
val chargeJson = request.body
val appId:Option[String] = (chargeJson \ "appid").asOpt[String]
if(appId.isDefined){
Logger.info("Api request" + appId)
f(request)
}
else{
Results.BadRequest("unfortunately")
}
}
}
我在这样的控制器中使用它;
def pay = withApiAuth(parse.json){ request =>
val chargeJson = request.body
println(chargeJson)
Ok("helo")
}
我错过了什么?