我可以在Action.async
块中获取JSON,但我特别想将请求参数"传递"给助手方法JSONtoCaseClass
;当我这样做时,它会丢失asJson
方法。
我有一个基本的控制器-在的最后一行设置调试断点
def addTeamMember = Action.async {
implicit request =>
PimpRequest.JSONtoCaseClass
request.body.asJson=无
CCD_ 4定义如下;在的最后一行设置调试断点
object PimpRequest {
implicit val projectReads = Json.reads[Project]
def JSONtoCaseClass[A](implicit request: Request[A]) = {
val newJSON = request
request.body.asJson=没有这样的实例字段:"asJson"
或者;使编译器给出错误;添加线路
val newJSONProject = request.body.asJson.getOrElse(throw new InvalidRequest("No JSON found in request"))
提供
值asJson不是类型参数a的成员
那么,如何帮助编译器计算出A类型的请求呢?
enter code here
def JSONtoCaseClass[A](请求:请求[AnyContent])
而不是
def JSONtoCaseClass[A](implicit request: Request[A])
(AnyContent
而不是A
)意味着request.body.asJson
可用