在 Rails 中,我能够执行类似于以下的操作:
respond_to do |format|
format.xml { ... }
format.json { ... }
end
并且将根据客户端在 Accept 标头中提供的内容执行相应的块。
如何在 Play 2.0 (Scala) 中做同样的事情?
我想做一些看起来大致像这样的事情:
try {
Resources.delete(id)
Ok("done")
}
catch {
case e: ClientReportableException =>
?? match {
case "application/xml" => Ok(<error>{e.message}</error>)
case "application/json" => Ok(...)
}
}
是否有一个 Play 习惯用法,或者我只是从请求中获取 Accept 标头的值?