小编iTa*_*shi的帖子

play2: FakeRequest().withBody(body) 在控制器中自动转换为 Request[AnyContentAsEmpty]

我正在开发一个 play-2.4 项目,并编写了一个控制器,如下所示:

package controllers

import play.api._
import play.api.mvc._
import scala.concurrent.Future
import scala.concurrent.ExecutionContext.Implicits.global

class Application extends Controller {
  def index = Action.async { implicit request =>
    Future { Ok(request.body.asJson.get) }
  }
}
Run Code Online (Sandbox Code Playgroud)

POST / controllers.Application.indexconf/routes

我通过执行检查这工作正常curl --request POST --header "Content-type: application/json" --data '{"foo":"bar"}' http://localhost:9000/

现在我为这个控制器编写了一个规范:

package controllers

import org.specs2.mutable._
import org.specs2.runner._
import org.junit.runner._

import play.api.test._
import play.api.test.Helpers._

@RunWith(classOf[JUnitRunner])
class ApplicationSpec extends Specification {
  "Application" should {
    val controller = new Application
    val fakeJson = …
Run Code Online (Sandbox Code Playgroud)

scala playframework playframework-2.4

3
推荐指数
1
解决办法
2511
查看次数

标签 统计

playframework ×1

playframework-2.4 ×1

scala ×1