我对我的项目使用了Zend Framework 1.x。我想为调用者函数创建一个只返回JSON字符串的Web服务。我试图使用Zend_Controller_Action
和施加那些方法:如何仅从Zend返回JSON
1.
$this->getResponse()
->setHeader('Content-type', 'text/plain')
->setBody(json_encode($arrResult));
2.
$this->_helper->getHelper('contextSwitch')
->addActionContext('nctpaymenthandler', 'json')
->initContext();
3.
header('Content-type: application/json');
4.
$this->_response->setHeader('Content-type', 'application/json');
5.
echo Zend_Json::encode($arrResult);
exit;
6.
return json_encode($arrResult);
$this->view->_response = $arrResult;
但是,当我用卷曲得到的结果,它返回用JSON字符串一些HTML标签包围。然后我尝试使用上面的选项Zend_Rest_Controller
。它仍然没有成功。
P.S .:上面的大多数方法都来自Stack Overflow上提出的问题。
我已经使用了这种方法一段时间了。我不明白需要所有额外的代码。据我所知,辅助方法可以处理所有的事情。 – David 2013-10-01 19:09:23
在哪里放这个代码?在控制器的动作功能? – 2016-03-15 13:55:40
@HarisMehmood你的控制者的行为是正确的地方,因为它是处理请求和准备输出的角色。 – Tim 2016-04-18 11:54:37