CakePHPでjsonを戻すAPIを作るサンプルを書いてみました。結構簡単なので、参考にしてみてください。
■気をつけるところ
気をつけるのは、【autoRender】と【autoLayout】をfalseに設定することと、responseのタイプにjsonを指定することです。
■サンプル
実際にサンプルを書いてみます。beforeFilter内でautoRenderとautoLayoutをfalseにして、layoutとviewを利用しないように宣言しています。アクションの中で、responseの種類をjsonに設定しています。最後にjson_encode関数を使ってjsonを表示して完了です。
<?php
App::uses('AppController', 'Controller');
class ApiController extends AppController {
/**
* 前処理
*/
public function beforeFilter() {
parent::beforeFilter();
$this->autoRender = false;
$this->autoLayout = false;
}
public function apitest() {
// JSONで戻します。
$this->response->type('json');
// JSONデータ
$jsonDataList = [
'hogehoge' => 'hoge',
'test' => 'mogemoge'
];
// JSON出力
echo json_encode($jsonDataList);
}
}
CakePHPであれば、かなり簡単にAPIも実装することができます。参考にしてみてください。では。