2

我有一个连接 db 的rest服务,到目前为止,我只能database通过它的ID.

我找不到合适的指南来解释如何使用GETurl 参数按其他字段进行过滤,以及如何选择例如“LIKE”或 LIKE %%” 或其他运算符。

4

1 回答 1

3

这是我对 CodeConnected Services 的体验。YMMV..

检索 URL 参数 - 控制器/资源类。

您的控制器需要从$this->getEvent()

 /**
 * Fetch a single Entity by ID, with some Query Params
 */
public function fetch($entity_id)
{
    // retrieve the query parameters\
    $queryParams = $this->getEvent()->getQueryParams();
}

其次,只有在你的 module.config.php 上批准的参数才能使其通过 Apigility 的验证器/过滤器部分。通知采集查询白名单

module.config.php在您的服务的模块文件夹中

'ServiceName\\V1\\Rest\\ServiceName\\Controller' => array(
            ...
            'entity_http_methods' => array(
                0 => 'GET',
                1 => 'PATCH',
                2 => 'PUT',
                3 => 'DELETE',
            ),
            'collection_http_methods' => array(
                0 => 'GET',
                1 => 'POST',
            ),
            'collection_query_whitelist' => array(
                0 => 'username',
                1 => 'entity_provider',
                2 => 'entity_type',
                3 => 'entity_date_range',
                4 => 'sort_by',
                5 => 'sort_order'
            ),
            ...
于 2014-10-27T17:33:06.387 回答