2013-12-13 32 views
0

我在爲CI篝火設置Rest服務器時遇到問題。在codeigniter篝火中使用restful api獲取404錯誤

我已按照此說明在此處安裝它:https://github.com/philsturgeon/codeigniter-restserver

我創建了一個新的控制器,看起來像這樣:

<?php if (!defined('BASEPATH')) exit('No direct script access allowed'); 

require(APPPATH.'libraries/REST_Controller.php'); 

class Hello extends REST_Controller{ 

function user_get() 
{ 
    $data = array('returned: '. $this->get('id')); 
    $this->response($data); 
} 

function user_post() 
{   
    $data = array('returned: '. $this->post('id')); 
    $this->response($data); 
} 

function user_put() 
{   
    $data = array('returned: '. $this->put('id')); 
    $this->response($data); 
} 

function user_delete() 
{ 
    $data = array('returned: '. $this->delete('id')); 
    $this->response($data); 
} 

} 

?> 

現在,我的網址是這樣的:http://website.com/public/admin/hello/user/id/1 這裏我得到一個404錯誤頁面。

我錯過了什麼?我是否要求控制器嚴重或者是否存在路由問題? 任何幫助將不勝感激。

回答

1

好吧,似乎我的問題是關於codeigniter路線。 談到這些線可以解決我的問題:

$route[SITE_AREA .'/([a-z_]+)/(:any)/(:any)/(:any)/(:any)/(:any)']  = "$2/$1/$3/$4/$5/$6"; 
$route[SITE_AREA .'/([a-z_]+)/(:any)/(:any)/(:any)/(:any)']  = "$2/$1/$3/$4/$5"; 
$route[SITE_AREA .'/([a-z_]+)/(:any)/(:any)/(:any)']  = "$2/$1/$3/$4"; 
$route[SITE_AREA .'/([a-z_]+)/(:any)/(:any)']  = "$2/$1/$3"; 
$route[SITE_AREA .'/([a-z_]+)/(:any)']    = "$2/$1/index"; 

但即使是更好的寫作高於那些新路線正在做這項工作。

$route[SITE_AREA .'/hello/(:any)'] = "admin/hello/$1"; 

希望有人會發現這個方便。

+0

嘿!您如何將REST API與Bonefire集成?您是否將REST_Controller擴展到MX_Controller?到目前爲止如何?我正在與這些傢伙開始一個新項目,這對我們很重要。謝謝! – Sobiaholic