https://instagram.com/aquateam.ir
api ساده با لاراول , آکوا ,آکوا تیم , آکوا اردبیل , آکوا توسعه وبسایت , آکوا ایران , اپلیکیشن

مقدمه

 

بدون اتلاف وقت بریم سراغ api اصلا api چیه ؟!! شاید براتون جالب باشه ولی api  یه گارسونیه که همیشه کار میکنه و هیچ وقتم خسته نمیشه😁😁 ،  api یا Application Programming Interface  که فارسیش میشه رابط کاربری  اپلیکیشن و یجورایی کار مارو برای توسعه اپلیکیشن های بومی و تحت وب راحت میکنه حالا چطوری؟!! فرض کنید وب‌سایت کسب‌وکار کوچک شما یک فرم دارد که از آن برای ثبت‌نام از مشتری‌ها برای خرید کالا استفاده می‌کند. شما می‌خواهید به مشتریان خود این توانایی را بدهید که به طور خودکار یک کالا  در وبسایت خریداری کنند  و جزییاتی  آن خرید را مشاهده نمایند. 



کاربرد API



ایده کاربرد API این است که کاری کنید سرور وب‌سایت شما به طور مستقیم و از طریق یک درخواست برای خرید کالا با جزییات برای  مشتری  را داشته باشد. سرور شما سپس پاسخ را دریافت کرده و اطلاعات مرتبط مانند پیام تأیید به کاربر را به مرورگر وی بازمی‌گرداند.

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

 

 

برای بسیاری از مشکلات راه‌حل‌هایی برای  API وجود دارند که به شکل یک کتابخانه هستند. بدین ترتیب در اغلب موارد استفاده از چنین API های آماده‌ای بسیار پایدارتر است.

در اغلب موارد تیم‌های توسعه، اپلیکیشن خود را به چندین سرور تقسیم می‌کنند که از طریق API با هم ارتباط دارند. سرورهایی که تابع‌های کمکی را برای اپلیکیشن اصلی اجرا می‌کنند، غالباً به نام میکروسرویس نامیده می‌شوند.

برای این که این بحث را جمع‌بندی بکنیم، باید اشاره کنیم که وقتی یک شرکت API خود را به مشتریان ارائه می‌کند، بدان معنی است که آن‌ها مجموعه‌ای از URL-های اختصاصی ساخته‌اند که پاسخ‌های داده‌ای خاصی را بازگشت می‌دهند.

 

لاراول

 

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

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

laravel new ApiTest

 

 

مرحله دوم ما به یک مدل نیاز داریم:

php artisan make:model Test  -r -m 

برای دسترسی به مدل از مسیر  app/model/test    استفاده میکنیم و کد زیر را وارد میکنیم:

<?php

namespace App\Models;

use Illuminate\Database\Eloquent\Factories\HasFactory;
use Illuminate\Database\Eloquent\Model;

class Test extends Model
{
    use HasFactory;
    protected $fillable = ['name'];
}

 

سپس در مسیر database/migrations  کد زیر را قرار میدهیم:

<?php

use Illuminate\Database\Migrations\Migration;
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Support\Facades\Schema;

return new class extends Migration
{
    /**
     * Run the migrations.
     *
     * @return void
     */
    public function up()
    {
        Schema::create('test', function (Blueprint $table) {
            $table->id();
            $table->string('name');
            $table->timestamps();
        });
    }

    /**
     * Reverse the migrations.
     *
     * @return void
     */
    public function down()
    {
        Schema::dropIfExists('test');
    }
};

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

php artisan make:controller TestController -r --model=Test

 

و در کنترلر TestController کد زیر را قرار میدهیم:

<?php

namespace App\Http\Controllers;

use App\Models\Test;
use Illuminate\Http\Request;

class TestController extends Controller
{
    /**
     * Display a listing of the resource.
     *
     * @return \Illuminate\Http\Response
     */
    public function index()
    {
        return Test::all();
    }

    /**
     * Show the form for creating a new resource.
     *
     * @return \Illuminate\Http\Response
     */
    public function create()
    {
        //
    }

    /**
     * Store a newly created resource in storage.
     *
     * @param  \Illuminate\Http\Request  $request
     * @return \Illuminate\Http\Response
     */
    public function store(Request $request)
    {
       return Test::create($request->validate(['name'=>'required']));
    }

    /**
     * Display the specified resource.
     *
     * @param  \App\Models\Test  $test
     * @return \Illuminate\Http\Response
     */
    public function show(Test $test)
    {
        //
    }

    /**
     * Show the form for editing the specified resource.
     *
     * @param  \App\Models\Test  $test
     * @return \Illuminate\Http\Response
     */
    public function edit(Test $test)
    {
        //
    }

    /**
     * Update the specified resource in storage.
     *
     * @param  \Illuminate\Http\Request  $request
     * @param  \App\Models\Test  $test
     * @return \Illuminate\Http\Response
     */
    public function update(Request $request, Test $test)
    {
        //
    }

    /**
     * Remove the specified resource from storage.
     *
     * @param  \App\Models\Test  $test
     * @return \Illuminate\Http\Response
     */
    public function destroy(Test $test)
    {
        //
    }
}

 

 

 

سپس در فولدر   Route فایل Api.php  را باز کرده و کد زیر را قرار می دهیم:

Route::resource('test', TestController::class);

 

سپس در ترمینال سیستم عاملمون دستور زیر را اجرا میکنیم:

php artisan serve

 

 سپس با نرم افزار PostMan  لینک   http://127.0.0.1:8000/test نتیجه را مشاهده میکنیم.

 

 آکوا تیم مرجع تخصصی طراحی  وبسایت ، اپلیکیشن و پویانمایی

 

 

پست های اخیر





api ساده با لاراول , آکوا ,آکوا تیم , آکوا اردبیل , آکوا توسعه وبسایت , آکوا ایران , اپلیکیشن

Api ساده با لاراول

در این پست قصد داریم تا با ساده ترین روش درست کردن api با لاراول آشنا شویم. لار...

ادامه مطلب
آیا برنامه نویسی آینده دارد؟ , آکوا , آکوا تیم , آکواتیم,آکوا تیک , آکواتیک

آیا برنامه نویسی آینده دارد؟

بی شک یکی از سوالاتی که به ذهن برنامه نویسان جدید می افتد و همیشه درگیر آن هستند...

ادامه مطلب
آکوا، آکواتیم، آکوا تیم

دلیل محبوبیت پایتون چیست؟

زبان برنامه نویسی پایتون در چند سال گذشته محبوبیت فراوانی را کسب کرده و دلیل آن...

ادامه مطلب
آکوا، آکواتیم، آکوا تیم

معرفی بازار کار موهو

اگر به انیمیشن سازی دو بعدی علاقه دارید، به شما پیشنهاد میکنیم حتما تا پایان این...

ادامه مطلب

کامنت های شما

comment image

Ali

 

گفت:

Awliiii
footer shape