我想要相同的控制器例程提供常规的基于web的页面加载以及REST调用。我在我的routes.php中设置了REST处理:
// Setup REST Handling
Router::mapResources( '<ControllerName>' );
Router::parseExtensions();让我们以add()方法为例--如何在这个方法中区分调用是如何进行的?
详细说明这一问题:
public function add() {
$status = array();
if( $this->request->is( 'post' ) ) {
// Read POST body
$entityBody = file_get_contents( 'php://input' );
}
}正如您在上面的代码中所看到的,我正在检测POST请求,并将相应地处理该请求。我需要弄清楚的是,post数据是否来自web表单中的REST调用。如果数据来自web表单,它将位于请求->数据数组中,而对于REST调用,则为XML格式。
我将相应地处理这些数据,并给出一个适当的响应。
谢谢。
发布于 2013-12-26 14:01:55
使用CakeRequest对象,请参阅文献资料,与post相同。
$this->request->is('put');https://stackoverflow.com/questions/20784670
复制相似问题