Vlanzyvinz Vlanzyvinz - 11 months ago 92
PHP Question

Codeigniter chriskacerguis-RESTAPI Unknown access method

This is my Folder


Both my example.php at API/example.php and API/ID/example.php were the same like this.


defined('BASEPATH') OR exit('No direct script access allowed');
require APPPATH . '/core/REST_Controller.php';

* This is an example of a few basic user interaction methods you could use
* all done with a hardcoded array
* @package CodeIgniter
* @subpackage Rest Server
* @category Controller
* @author Phil Sturgeon, Chris Kacerguis
* @license MIT
* @link https://github.com/chriskacerguis/codeigniter-restserver

class Example extends REST_Controller {
public function index_get()
// index from a data store e.g. database
$index = [
['id' => 1, 'name' => 'John', 'email' => 'john@example.com', 'fact' => 'Loves coding'],
['id' => 2, 'name' => 'Jim', 'email' => 'jim@example.com', 'fact' => 'Developed on CodeIgniter'],
['id' => 3, 'name' => 'Jane', 'email' => 'jane@example.com', 'fact' => 'Lives in the USA', ['hobbies' => ['guitar', 'cycling']]],

$id = $this->get('id');
$this->response($index, REST_Controller::HTTP_OK);

public function users_get(){

First I Adjust my config/routes.php like this

$route['API'] = "API";
$route['API/(.+)'] = "API/$1";

When I accessed base_url/API/Example/id/1 it responded the $index[1] that has name John.

Then I changed the routes.php into


Then I accessed I accessed base_url/API/Example/id/1
Which will go to API/ID/Example based on routes.php
But Its responded

"status": false
"message": "Unknown method"

But if I accesed base_url/API/Example?id=1
It responded with $index[1]

How can I call api from API/ID/Example.php using base_url/API/example/id/1
and it will return $index[1]? not status:false unknown method

Answer Source

I know the solution, Its because my routing is wrong