[CakePHP1.2]モデルもビューも使わずJSON返すだけのコントローラ例

class ApiController extends AppController
{
	var $uses = null; // モデル(DB)使わない
	var $components = array('RequestHandler');

	// 応答 Content-Type をJSONに(beforeFilterに書かないと動かない)
	function beforeFilter()
	{
		parent::beforeFilter();
		$this->RequestHandler->setContent('json');
		$this->RequestHandler->respondAs('application/json; charset=UTF-8');
	}

	function index()
	{
		$data = array('xxx');
		$json = json_encode($data);

		return $this->output($json);
	}

	private function output($resp)
	{
		$this->autoRender = false;    // View使わない
		Configure::write('debug', 0); // 応答からデバッグ文字列を排除
		return $resp;
	}

}