根据HTTP头值,在CakePHP中路由到不同控制器的最佳方式是什么?

根据HTTP头值,在CakePHP中路由到不同控制器的最佳方式是什么?,cakephp,routes,http-headers,cakephp-2.3,Cakephp,Routes,Http Headers,Cakephp 2.3,我正在寻找一种根据HTTP“Accept”头的值将URL路由到不同控制器的方法 到目前为止,我所发现的只是官方文件,但并不是很详细 这是否可能使用路由配置,或者我是否必须以另一种方式(例如,通过实施DispatcherFilter来检查CakerRequest) 我想要一个可以无缝分配职责的机构 在服务器端和客户端之间:例如,让客户端处理 视图创建,而不是服务器用HTML响应 文件 我猜你用的是AngularJS?那么,我想您希望返回的是数据格式,而不是HTML。因此,通过accept头和/或扩

我正在寻找一种根据HTTP“Accept”头的值将URL路由到不同控制器的方法

到目前为止,我所发现的只是官方文件,但并不是很详细

这是否可能使用路由配置,或者我是否必须以另一种方式(例如,通过实施
DispatcherFilter
来检查
CakerRequest

我想要一个可以无缝分配职责的机构 在服务器端和客户端之间:例如,让客户端处理 视图创建,而不是服务器用HTML响应 文件

我猜你用的是AngularJS?那么,我想您希望返回的是数据格式,而不是HTML。因此,通过accept头和/或扩展请求application/json。蛋糕可以检测到这两种情况并做出相应的响应

阅读手册中的JSON和XML视图


如果您还提供一些详细信息,说明为什么需要根据Accept标头切换控制器,则获得正确答案的几率将提高。通常只需要切换视图类和/或返回的数据格式。控制器/操作保持不变。@ADmad不明白为什么需要这样做,tbh。但是好的。基本上,我想要一个可以在服务器端和客户端之间无缝分配职责的设置:例如,让客户端处理视图创建,而不是让服务器用HTML文档响应。在这种情况下,我需要发回不同的文件。“我真的不明白为什么那是必要的”你是对的。抱歉打扰您了。@ADmad无需道歉。没问题。是的,有点类似于角JS,但更激烈。请注意,这是我的一个编码实验。顺便说一句,这是一个很好的链接;正是我需要的!