如何阻止CakePHP将注释标记放在输出中

时间:2014-03-14 16:02:05

标签: php json cakephp html

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

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

Cake在我的输出中添加 HTML 标记。

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

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

我可以把

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

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

如何打印出警告/错误,但仅对有警告/错误的请求发出警告/错误,而不是成功回复的HTML评论。

2 个答案:

答案 0 :(得分:1)

你是如何产生Json的?

请参阅http://book.cakephp.org/2.0/en/views/json-and-xml-views.html

您必须确保应用程序以json的形式响应,这意味着正确的标题,正确的布局和正确的内容。既然你没有展示你如何生成Json我假设你没有正确地将Json呈现为HTML,可能在ajax布局或其他内容中,这就是字符串出现在那里的原因。

在json不应出现之后,请遵循文档和字符串。

答案 1 :(得分:0)

这可能是一个错误。调试你的回应。(XHR)。使用echo或debug(这里是json代码)或vardump(jason ..)。 你需要确保你正在重新找到适当的json。

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

cakePHP Ajax view

如果要将数组转换为json,则需要使用json_decode。然后在视野中你必须要弄你的json