2

我有一个这样设置的锂应用程序,所以当

return($data) 

使用它既可以在锂view.html.php中用作

echo $data

或者如果请求标头“accept”等于“json/javacript”,它会返回类似

{
data: { a:'b' }
}

自动地。

不幸的是,在我作为测试应用程序制作的新应用程序中,流程没有发生(并且始终只返回 HTML)。

在做了一些研究之后,如果我取消注释,它似乎应该自动完成

require __DIR__ . '/bootstrap/media.php';

在 bootstrap.php 里面但是没有用,我仍然返回了 HTML。我下载了一个最新版本的锂框架(我下载的可能是 1 或 2 个月前)

有人知道 JSON 的自动响应是否需要一些设置?

4

2 回答 2

2

取自http://dev.lithify.me/lithium/tickets/view/353

然后取自锂文档

要启用自动内容类型协商(即根据 HTTP Accept 标头的值确定响应的内容类型),请将 'negotiate' 标志设置为 true。否则,响应将仅基于请求对象的类型参数(如果请求参数中不存在类型,则默认为“html”)

http://li3.me/docs/lithium/action/Controller ::$_render

如果您需要有关如何实施的更多帮助,请发表评论。

于 2012-03-18T07:15:58.313 回答
2

也可以在调用 render() 时将 type 设置为 $this->request->accepts()。

return $this->render(array('type' => $this->request->accepts()));
于 2012-03-18T13:47:42.280 回答