在CakePHP REST API中输入数据验证

时间:2015-01-08 09:36:29

标签: php api validation rest cakephp

我正在使用CakePHP开发REST API。问题是关于作为输入参数发送到我的API的数据的验证。在他们提到的CakePHP documentationthis。但是如何为REST API实现它呢?

如果我在app/Model/Table.php中添加类似的验证,我希望如此:

public $validate = array(
    'email' => 'email'
); 

然后,当我的用户发出请求myapi.com/resource?email=abc123时,我希望API像

一样回复

status: 400

{
    "message": "Invalid Parameter",
    "url": "/resource"
}

1 个答案:

答案 0 :(得分:0)

基于the documentation,您可以在控制器中使用:

$this->Model->set($this->request->data);

if (!$this->Model->validates()) {
    $this->response->statusCode(400);
    $this->set('_serialize', array(
       'message' => 'Invalid Parameter',
       'url' => '/resource',
    ));
}