以下に示すルートを作成しました。
Router::connect('/:api/:controller/:action/*', array(), array('api'=>'api'));
Router::connect('/:api/:controller', array('action' => 'index'), array('api'=>'api'));
Router::connect('/:api/', array('controller' => 'index', 'action' => 'index'), array('api'=>'api'));
基本的に、特定のエンドポイントを介して行われたすべてのリクエストが JSON で応答するようにしたいと考えています。上記の場合、api プレフィックスを使用して作成されたすべてのリクエスト。例えば:
http://localhost/api/products
HTML ではなく JSON 応答を返す必要があります。.json 拡張子が定義されていなくても、そのように機能するはずです。