2

我正在使用 Phil Sturgeon 在这里编写的以下代码:https ://github.com/philsturgeon/codeigniter-restserver

在他的文档中,我无法看到控制器侧面的限制选项是如何设置的。

RESTController 控制器文件有一些参考,例如

第 654 行:https ://github.com/philsturgeon/codeigniter-restserver/blob/master/application/libraries/REST_Controller.php

显示受保护的功能,另外还有:

 // How many times can you get to this method an hour?
 $limit = $this->methods[$controller_method]['limit'];

从 rest.php 配置:

/* |---------------------------------------------------------- --------------------------- | REST 启用限制 |------------------------------ ---------------------------------------- | | 设置为 true 时 REST_Controller 将计算每个方法的使用次数 | 每小时通过一个 API 密钥。这是可以在 | 中覆盖的一般规则。每个控制器中的 $this->method 数组。|

任何人都可以帮我解决这个问题吗?目前正在拔头发:-)

我目前的控制器方法之一:

function listservices_get()
{
    $organisation_id = $this->get('id');
    $organisations = $this->api_buyus_model->list_services($organisation_id);

    if($organisations)
    {
            $this->response($organisations, 200);
    }
    else
    {
            $this->response(array('error' => '1', 'errorDesc' => 'Buy us services list could not be retrieved.'), 400);
    }
}
4

2 回答 2

3

固定:

    protected $methods = array(
            'index_put' => array('level' => 10, 'limit' => 10),
            'index_delete' => array('level' => 10),
            'level_post' => array('level' => 10),
            'regenerate_post' => array('level' => 10),
    );
于 2012-11-06T14:19:10.403 回答
0

你有没有尝试过类似的东西

$this->methods['listservices_get']['limit'] =10在函数的顶部?

如果您有调试器,则可能值得在其中设置一个断点以检查设置的限制。然后您可以在调用响应之前覆盖它。

于 2012-11-06T14:11:26.357 回答