gpt4 book ai didi

scala - 从Play框架(Scala)中的play.api.mvc.Action [AnyContent]获取响应正文

转载 作者:行者123 更新时间:2023-12-04 03:27:45 25 4
gpt4 key购买 nike

我有以下 Play (Scala)代码:

object Experiment extends Controller {

//routes file directs /genki here
def genki(name: String) = Action(pipeline(name))

def pipeline(name: String) = {
req:play.api.mvc.RequestHeader => {
val template = views.html.genki(name)
Experiment.Status(200).apply(template).as("text/html")
}
}

def simple = Action {
SimpleResult(
header = ResponseHeader(200, Map(CONTENT_TYPE -> "text/plain")),
body = Enumerator("Hello World!".getBytes())
)
}

}

这样可以编译并按预期工作。

使用scala REPL,我如何显示实际的html?

我有:
 scala> val action = simple
action: play.api.mvc.Action[play.api.mvc.AnyContent] = Action(parser=BodyParser(anyContent))

我要说的是,现在REPL中的值引用'action'是一个Action对象,该对象受AnyContent类型约束(这是正确的说法吗?)。

现在如何使用此操作来打印Http响应html内容?

非常感谢

最佳答案

您可以使用play.api.test.Helpers来代替vptheron描述的手动结果提取:

import play.api.test.Helpers._
val result: Future[SimpleResult] = …
val bodyAsBytes: Array[Byte] = contentAsBytes(result)

还有 contentAsString等。

关于scala - 从Play框架(Scala)中的play.api.mvc.Action [AnyContent]获取响应正文,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21436155/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com