آموزش کدایگنایتر ( سری سوم )

آموزش کدایگنایتر ( سری سوم )

بروزرسانی : 4 سال پیش

آموزش ساخت وب سرویس restful api در فریمورک کدایگنایتر

در این سری آموزش فریمورک کدایگنایتر قصد داریم نحوه ی پیاده سازی Restful API توسط فریمورک کدایگنایتر را آموزش دهیم.

این آموزش برای افرادی مناسب است که نیاز به وب سرویس جهت اتصال به اپلیکیشن های مختلفی از طریق فریمورک کدایگنایتر را دارند.

با استفاده از این وب سرویس به راحتی میتوانید با فریمورک کدایگنایتر خروجی API برای اپلیکیشن های موبایل مثل اندروید یا IOS بگیرید.

برای اتصال یک اپلیکیشن موبایل به فریمورک کدایگنایتر نیاز است که یک وب سرویس مبتنی بر Restful بسازید که در این آموزش خدمت شما تقدیم خواهیم کرد.

در این آموزش یک rest api  پیاده سازی خواهیم کرد که از متود های HTTP مثل  GET, PUT, POST, DELETE استفاده خواهد کرد.

ما در این آموزش یک وب سرویس مبتنی بر restserver کدایگنایتر پیاده سازی خواهیم کرد.

آموزش ساخت وب سرویس کدایگنایتر برای اپلیکیشن موبایل - اتصال کدایگنایتر به اپ اندرویدی

برای یادگیری ساختن وب سرویس مبتنی بر restful api توسط کدایگنایتر ، قدم های زیر را مرحله به مرحله طی کنید.

 

قدم ۱ − ساختن جدول items در دیتابیس

در ابتدا برای پیاده سازی مثال نیاز داریم که جدول دیتابیس را بسازیم و کمی اطلاعات الکی وارد کنیم تا بتوانیم کدنویسی های خودمان را تست کنیم.

در ابتدا یک جدول به نام items میسازیم که از طریق کدهای کوئری زیر قابل ساخت میباشد : 

CREATE TABLE IF NOT EXISTS `items` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `title` varchar(255) NOT NULL,
  `description` varchar(255) NOT NULL,
  `created_at` datetime NOT NULL,
  `updated_at` datetime NOT NULL,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB  DEFAULT CHARSET=latin1 AUTO_INCREMENT=

 

قدم ۲ − ساخت فایل تنظیماتی rest.php

در این قدم ما نیاز داریم که یک فایل تنظیماتی برای rest api  بسازیم به نام rest.php

این فایل را در مسیر application/config/rest.php بسازید و کدهای زیر را درونش بنویسید.

دانلود فایل های کد از اینجا 

 

قدم ۳ − ساخت فایل های کتابخانه ( codeigniter library ) 

در این قدم قصد داریم کتابخانه های مورد نیاز را بسازیم . برای این کار دو فایل به نام های REST_Controller.php و Format.php در مسیر library کدایگنایتر بسازید.

پس یکی در این مسیر قرار میگیرد application/libraries/REST_Controller.php و کدهای آن درون یک فایل zip قراردادیم تا دریافت کنید. از اینجا دانلود کنید 

یکی دیگر در مسیر application/libraries/Format.php قرار میگیرد و محتویات آن نیز درون یک فایل زیپ میتونید از اینجا دانلود کنید.

 

قدم ۴ − ساخت کنترلر مربوط به API کدایگنایتر

در این قدم قصد داریم کنترلر کدایگنایتر را ایجاد کنیم . برای این کار و نظم بیشتر یک فولدر درون فولدر controllers کدایگنایتر بسازید و نام آنرا api قرار دهید و سپس درون این فولدر یک فایل پی اچ پی جدیدی به نام Item.php بسازید که قرار است کنترلر ما باشد.

مسیر این فولدر و فایل باید به شکل application/controllers/api/Item.php باشد.

<?php
   
require APPPATH . 'libraries/REST_Controller.php';
     
class Item extends REST_Controller {
    
	  /**
     * Get All Data from this method.
     *
     * @return Response
    */
    public function __construct() {
       parent::__construct();
       $this->load->database();
    }
       
    /**
     * Get All Data from this method.
     *
     * @return Response
    */
	public function index_get($id = 0)
	{
        if(!empty($id)){
            $data = $this->db->get_where("items", ['id' => $id])->row_array();
        }else{
            $data = $this->db->get("items")->result();
        }
     
        $this->response($data, REST_Controller::HTTP_OK);
	}
      
    /**
     * Get All Data from this method.
     *
     * @return Response
    */
    public function index_post()
    {
        $input = $this->input->post();
        $this->db->insert('items',$input);
     
        $this->response(['Item created successfully.'], REST_Controller::HTTP_OK);
    } 
     
    /**
     * Get All Data from this method.
     *
     * @return Response
    */
    public function index_put($id)
    {
        $input = $this->put();
        $this->db->update('items', $input, array('id'=>$id));
     
        $this->response(['Item updated successfully.'], REST_Controller::HTTP_OK);
    }
     
    /**
     * Get All Data from this method.
     *
     * @return Response
    */
    public function index_delete($id)
    {
        $this->db->delete('items', array('id'=>$id));
       
        $this->response(['Item deleted successfully.'], REST_Controller::HTTP_OK);
    }
    	
}

حالا میتوانید نتیجه ی کدهای زیر را میتوانید به شکل اسکرین شات های زیر مشاهده کنید :

 

Item List API :

آموزش ساخت وب سرویس مبتنی بر restful api در کدایگنایتر

Item Create API :

آموزش ساخت وب سرویس مبتنی بر restful api کدایگنایتر
 

Item Show API :

آموزش ساخت وب سرویس مبتنی بر restful api در کدایگنایتر

Item Update API :

آموزش ساخت وب سرویس مبتنی بر restful api کدایگنایتر

Item Delete API :

آموزش ساخت وب سرویس restful api برای کدایگنایتر

اتمام آموزش ساخت وب سرویس مبتنی بر Restful Api توسط کدایگنایتر 

امیدوارم که این آموزش به دردتان خورده باشد.

 

لینک کوتاه این مقاله : https://avasam.ir/post/186
این سیستم برپایه ی علاقه مندی شما یک دوره ی مناسب به شما پیشنهاد میدهد
مرا بسوی بهترین دوره ی آموزشی که برای من مناسب است هدایت کن 🤖
برای استفاده ی دیگران و حمایت از ما در جامعه های زیر به اشتراک بگذارید

.:: نظرهای کاربران ::.
دوره ی آموزش پروژه محور ساخت کافه بازار دوره ی آموزش پروژه محور ساخت فروشگاه دیجیکالا آموزش لاراول دوره ی آموزش ویو جی اس