2017-08-02 10 views
0

CodeIgniterとRest APIの新機能です。私はCodeIgniterでREST APIを実装しようとしており、Phil Sturgeonのrest-clientとrest-serverを使っています。いくつかのチュートリアルを見て、Rest-Serverの部分を正常に実装しました(ChromeのRest Client APPで確認しています)。しかし、Rest-Clientを実装するには、ほとんど問題がありません。codeigniterでrest_clientを使用して呼び出す方法

私はcURLとCodeIgniterのcUrlライブラリが必要ですか? 「はい」の場合、どうすれば設定できますか?

I watched this tutorial too by Phil Sturgeonただし、このチュートリアルでは、Rest-Client関数を使用してサーバーを呼び出すだけでした。しかし、どこに置くべきかは定義されていない。コードは次のとおりです

function rest_client($id){ 
    $this->load->library('rest', array(
     'server' => 'http://localhost/rest/index.php/restgetcontroller/', 

    )); 

    $user = $this->rest->get('user', array('id' => $id), 'json'); 

    echo $user->name; 
} 

あまりにも単純であれば申し訳ありません。

はあなたに

編集ありがとう:私はクライアントコントローラを作って、そこにそれを呼び出すための方法を置きます。しかし、私はページをロードすると、私はこのエラーが発生します。

Call to undefined method CI_Loader::spark() 

答えて

0

APIから値を取得する必要がある場合は、いつでも使用できます。

$userには、あなたの目的に使用できる値があります。

基本的には、Modelを使用したAPIを使用します。これは、データベースとのやりとりがAPIで直接行われ、コントローラから直接行われることがないためです。

0

CURLが必要なRESTful APIを呼び出すには、CURLをより効率的に使用するためのGuzzlehttpというライブラリがあります。

composerを使用してライブラリをインストールするか、単にzipをダウンロードしてコントローラに必要とすることができます。

使用例:

try { 
     $guzzleHttp = new GuzzleHttp\Client([ 
      'verify' => false 
     ]); 

     $http_response = $guzzleHttp->request('GET', 'http://localhost/rest/index.php/restgetcontroller/'); 
     $response = json_decode($http_response->getBody()->getContents()); 

     return $data; 
    } catch (Exception $e) { 
     log_message('error', $e->getMessage()); 
     return false; 
    } 
関連する問題