我已经创建了一个简单的rest api,但是当我在url中点击路径时会抛出错误,即{"status":false,"error":"Unknown method"}
。我以为route.php
文件中有问题。我怎么解决这个问题?请帮助我。
控制器:User.php
<?php
require APPPATH . '/libraries/REST_Controller.php';
use Restserver\Libraries\REST_Controller;
class User extends REST_Controller
{
function __construct()
{
parent::__construct();
$this->load->database();
}
function user_data()
{
$this->db->select('*');
$this->db->from('tbl_books');
$sql = $this->db->get();
$result = $sql->result_array();
$this->response($result, 200);
}
function country()
{
echo "hello";
}
}
route.php
$route['default_controller'] = 'user';
$route['404_override'] = '';
$route['translate_uri_dashes'] = TRUE;
$route['user_data'] = "user/user_data";
$route['country'] = "user/country";
答案 0 :(得分:1)
您需要对代码进行2次更改,如下所示,
在用户控制器中更改方法签名, 从此函数country()到此函数country_get()
更改国家/地区的路线,您需要在其中添加方法。 从这个$ route ['country'] =“用户/国家”;到此$ route ['country'] ['get] =“ user / country”;
答案 1 :(得分:0)
如您所说,您正在呼叫
http://localhost/rest/user_data
尝试致电
http://localhost/rest/user/user_data
在您的情况下:它正在尝试调用User_data控制器,由于它不存在,因此给您一个错误。
基本路径之后的第一部分是控制器名称,后跟控制器的方法。
http://localhost/rest/user_data