我想在我的项目中实现Phill Sturgeon CodeIgniter RESTServer库 .
我分别在文件夹 config,library,library 中复制了文件 rest.php, Format.php, REST_Controler.php .
我使用以下代码创建了名为services的控制器:
<?php
require(APPPATH.'/libraries/REST_Controller.php');
class services extends REST_Controller {
function Teams_get(){
$teamNames=$this->team_model->getTeamNames();
$this->response($teamNames);
}
TeamModel在我的 autoload.php 中自动加载 . 当我想在浏览器中运行Teams_get方法时,结果是:
{"status":false,"error":"Unknown method."}
我读here我应该更改 REST_Controler.php 配置文件,但只有在POST方法不起作用时才能进行此更改 .
我的服务应该是公共的,所以我不需要身份验证方法 .
这有什么不对?
1 回答
调用API时,URL应该只是方法的名称,而不是
_get
(或_post
) . 这是由REST服务器添加的,具体取决于URL的调用方式(GET
vsPOST
) .因此,要调用
Teams_get
方法,您需要将GET
请求发送到URL/services/Teams
(而不是/services/Teams_get
) .文件:https://github.com/philsturgeon/codeigniter-restserver#handling-requests