質問: 'xmlhttprequest'){ return true; } return false; } } ?> ```
回答: HTTP_X_REQUESTED_WITH ヘッダーはクロスドメインでは送信されないようです。 Ajax と遷移リクエストでは、 HTTP_ACCEPT に違いが出たと思います。 (この方法はクライアントサイドの実装やプラットフォームに依存するので外部に公開する API では使いにくいかもしれませんね。 いずれにしても慎重な検証が必要です。) また CakePHP 側で URL 末尾の拡張子 (*.json) でも分岐できたと思いますが、要件には合いませんか? 遷移リクエストでは一般的に .json という URL にはしないものと思いますが、それなら URL が異なるので確実に判定可能です。