如何使用Codeigniter REST和Response方法

时间:2012-07-11 16:33:48

标签: codeigniter rest

我是REST API和CURL的新手,我一直指的是http://net.tutsplus.com/tutorials/php/working-with-restful-services-in-codeigniter-2/

如果我将错误代码从403更改为200,我会得到输出: '错误发生'。

如果我将errror代码保留为403,我会得到输出: '出了问题'

从做一些阅读看起来我提供某种错误代码似乎是正确的,但我如何传回错误的更多细节?我应该如何回应?

我的API

public function login_put() {
    $valid = $this->membership_model->validate_username($this->put('username'));
    if($valid !== TRUE){
        $this->response(array('status' => 'error', 'msg' => 'error_details'), 403);  
    } 
}

MY CURL测试员

function curl_put()  
{  
    $this->load->library('curl');  
    $this->curl->create('http://localhost/api/login/format/json');  

    $this->curl->put(array(  
        'username' => 'my_username' 
    ));  

    $result = json_decode($this->curl->execute());  

    if( isset($result->status) && $result->status == 'error' ) { 
        echo 'Error occured';
    } else {  
        echo 'Something has gone wrong';  
    }
} 

1 个答案:

答案 0 :(得分:1)

看起来你错过了卷曲网址中的引用。如果login_put被称为login.php的文件,您的网址应如下所示:

http://localhost/api/login/login/format/json  

首先,我们有您的域名,然后是API的引用。第一次登录引用api文件夹中的控制器,第二次引用您定义的函数名称(login_put)