1 回答

TA貢獻(xiàn)1836條經(jīng)驗(yàn) 獲得超5個(gè)贊
這是一個(gè) ZF1 應(yīng)用程序樹,ZF1 有其 REST 實(shí)現(xiàn)。
假設(shè)您將其稱為“MyRestfulController”。
那么你必須注冊(cè)你的休息路線,你可以在你的 Bootstrap.php 中完成
protected function _initRestRoute()
{
? ? $frontController = $this->bootstrap('frontController')->getResource("frontController");
? ? $restRouteUL = new Zend_Rest_Route($frontController, array(), [
? ? ? ? 'default' => [
? ? ? ? ? ? 'my-restful'
? ? ? ? ]
? ? ]);
? ? $frontController->getRouter()->addRoute('rest', $restRouteUL);
}
或者
如果您不需要休息,而只是返回一些 JSON 的 API,您可以跳過 Restful 部分并禁用控制器中的布局(因此不擴(kuò)展 Zend_Rest_Controller ),覆蓋“init()”方法
? ? public function init()
{
? ? parent::init();
? ? $this->_helper->layout->disableLayout();
? ? $this->_helper->viewRenderer->setNoRender();
? ? $this->getResponse()->setHeader("Content-type", "text/json");
? ??
? ? /**
? ? ?* This is important for the helper not to exit the dispatch loop
? ? ?*/
? ? $this->_helper->json->suppressExit = true;
}
那么在你的行動(dòng)中
public function getMyDataAction()
{
? ? $data = [];
? ? // your filters and all the logic to populate $data
? ? $this->_helper->json($data);
}
請(qǐng)記住,ZF1 有幾個(gè)性能問題,主要與資源配置有關(guān),應(yīng)盡可能用 serviceManager 替換,也可以用 Zend_Date 替換。
- 1 回答
- 0 關(guān)注
- 147 瀏覽
添加回答
舉報(bào)