如何阻止CakePHP在输出中放置注释标签


How to stop CakePHP from putting comment tags in output

我正在创建一个返回JSON的端点。

{"a":1,"b":1}

Cake在我的输出中放置了一个HTML标签。

{"a":1,"b":1}
<!-- 0.0964s -->

为什么它会对我的JSON这样做?

Configure::write('debug', 0);

,但它会在开发过程中抑制任何警告/错误。如果出了什么问题,我是不会知道的。

如何打印出警告/错误,但只打印有警告/错误的请求的警告/错误,而不是成功响应的HTML注释

如何生成Json?

见http://book.cakephp.org/2.0/en/views/json-and-xml-views.html

你必须确保应用程序响应json,这意味着适当的标题,适当的布局和适当的内容。因为你不显示你如何生成Json我假设你不正确,Json呈现为HTML,可能在ajax布局或其他东西,这就是为什么字符串出现在那里。

遵循文档,json后面的字符串不应该出现

可能是错误。调试您的响应(XHR)。使用echo或debug(这里是json代码)或vardump(jason..)。你需要确保你正在检索正确的json

要清除您的ajax视图布局看看我的答案在这里可能有助于您的ajax布局。而且你也不需要为你的ajax方法添加布局。

cakePHP Ajax视图

如果你将数组转换为json,你将需要使用json_decode。然后在view中你需要修饰json