ITエンジニアSAIの技術関連備忘録

技術的な内容を忘れないようにメモ....

FuelphpでRestfulなWebAPIを作成する方法

1.環境

  Mac macOS Sierra
  Vagrant1.9.3(CentOS 7.1)
   PHP5.4
   Fuelphp1.7.3
 
 
2.実装ポイント

 
ポイントとしては下記ソースコードの赤文字の部分
 
① コントローラークラスに「Controller_Rest」を継承させること。
 
② before関数に親のbefore関数を呼び出すparent::before();処理を追加
 
③ RestControllerと普通の画面などを返すControllerの場合では、return で返す際の書き方が異なるので注意
    ※「$this->response($result);」の部分
 
<?php
/**
 * Fuel is a fast, lightweight, community driven PHP5 framework.
 *
 * @package Fuel
 * @version 1.7
 * @author Fuel Development Team
 * @license MIT License
 * @copyright 2010 - 2015 Fuel Development Team
 */
USE \Model\Common;
 
/**
 * The Welcome Controller.
 *
 * A basic controller example. Has examples of how to set the
 * response body and status.
 *
 * @package app
 * @extends Controller
 */
class Controller extends Controller_Rest
{
     public function before()
     {
          parent::before();
     }
 
/**
  * POST送信をする
  *
  * @access public
  * @return Response
  */
public function action_sendPost()
{
     Log::debug("===== Controller_Tools_Postclient.sendPost =====");
 
     $result = array(
          "result_code" => "OK",
          "error" => "FALSE",
          "error_details" => "",
          "return_json" => ""
     );
 
     //*** 中間の処理は割愛 ***
 
     Log::debug("===== Controller_Tools_Postclient.sendPost =====");
 
     return $this->response($result);
  }
}