追記 2016/12/22
この記事うまくいかないかもしれません。
でかいデータを入れると何故かうまくいかないことが増えました。
↑のほうがいいかも。追記終わりです。
これの$this->autoRender = false;
を使ったほうでやりました。
ただ、echo
で返すとそこで処理が中断されないので、そのあとにreturn;
が必要だと思います。
<?php // ... 省略 public function addItem() { $this->autoRender = false; $this->response->charset('UTF-8'); $this->response->type('json'); // ... 省略 try { if ($this->Post->save($posts)) { echo json_encode($posts); return; } } catch (\PDOException $e) { } } // ... 省略 echo json_encode([]); return; }
CakePHP2.xの時はreturn
を使って返していたので、若干ハマりました。。。