A.
play.api.mvc.Result
表示HTTP响应;它封装了状态代码、HTTP头和要发送到web客户端的正文。
ok(responseBody)
Result
Http状态为200。
后果
使用这些静态助手方法之一创建结果实例。但是,您可能需要调整由
实例,可能是通过使用
response()
静态辅助方法。
Context.current()
),Play将此线程局部变量传播到处理HTTP响应回调的线程,并在该调用中
JavaHelpers.createResult(â¦)
play.mvc.Result
实例,并调用
withHeaders()
withCookies()复制通过
调用。
因此,在您发布的代码中:
public Result index() {
response().setHeader(CACHE_CONTROL, "max-age=3600");
response().setHeader(ETAG, "xxx");
return ok("<h1>Hello World!</h1>").as("text/html");
}
这个
在线程局部变量上调用set标头
ok()
调用创建
play.mvc.Result
后果
我认为这回答了:
那么,在返回之前,响应中的cookie和头将最终与框架生成的cookie和头合并?
如果是这样,那么创建两个类而不是一个类,并将cookie/header放在两个位置的理由是什么?
我认为只有剧本作者才能解释
选择了此实现。也许这是Play的双头性的结果,Java实现是Scala基础上的薄包装。然而,从Play用户的角度来看,只要知道您通过
将与任何内容合并
您创建。