Cra*_*ayl 4 xml playframework playframework-2.0
不知何故,我无法弄清楚如何玩!提供XML响应.我也不了解文档(你可以在这里找到).
我的目标是创建一个站点地图,因此响应应该是一个 Content-Type: application/xml;
如何更改以下控制器以提供Content-Type?
public static Result sitemap() {
return ok("<message \"status\"=\"OK\">Hello Paul</message>");
}
Run Code Online (Sandbox Code Playgroud)
bie*_*ior 12
Content-type如果您将以ok()正确的方式将其传递给方法,则播放将正确设置标题.举个例子,如果你要回来String(正如你所说的那样)它会考虑那个text/plain.你有至少2种方式,最快(但很难看)是强制内容类型,Jürgen建议将其设置为响应,但事实上Play有一个快捷方式:
public static Result sitemap() {
return ok("<message status=\"OK\">Hello Paul</message>").as("text/xml");
}
Run Code Online (Sandbox Code Playgroud)
另一方面,使用XML模板可能比使用粘合字符串构建它更好,更清晰...只需创建XML文件:
/app/views/sitemap.scala.xml:
<message status="OK">John Doe</message>
Run Code Online (Sandbox Code Playgroud)
所以你可以像使用它一样简单:
public static Result index() {
return ok(views.xml.sitemap.render());
}
Run Code Online (Sandbox Code Playgroud)
当然这个文件是Play的常用模板,因此您可以将数据传递给它并在内部进行处理(即迭代项目列表等)
| 归档时间: |
|
| 查看次数: |
2368 次 |
| 最近记录: |