出现错误 JsValue Expected 但 JsNode supplied

Getting an Error JsValue Expected but JsNode Supplied

我正在使用 Play 2.5,我需要有关编译错误的建议。它说我已经给了 JsNode 值,但 JsValue 是预期的。我不知道出了什么问题。

  val response : Future[Result] =
    controller.foo()
      .apply(FakeRequest(POST, "/form")
        .withHeaders(CONTENT_TYPE -> JSON)
        .withJsonBody(Json.parse("""{"name":"Jacek","age":41}""")))

我刚刚检查了你的代码:

  lazy val controller = inject[HomeController]

  controller.index()
      .apply(
  FakeRequest("POST", "/form")
    .withJsonBody(Json.parse("""{"name":"Jacek","age":41}""")))

这行得通。

所以我的猜测是:您导入了错误的 Json 对象。

确保您导入了:play.api.libs.json.Json