Ce este API-ul REST în laravel: tot ce trebuie să știți

Publicat: 2022-11-03

Lumea se îndreaptă complet către ușurința utilizării dispozitivelor mobile și a căuta soluții online. Designul web și dezvoltarea web progresează într-o măsură masivă în lumea de astăzi.

Cea mai mare parte a cererii a fost îndreptată către smartphone-uri, deoarece dezvoltarea site-urilor web include și dezvoltarea de aplicații mobile. Acestea fiind spuse, pentru aplicațiile mobile, backend-ul necesită un API odihnitor.

Dacă nu știți ce este API-ul REST, e ok! Vă avem acoperit.

În acest blog, voi explica ce este API-ul odihnitor și cum funcționează. De asemenea, voi explica cum să dezvolt un API odihnitor în Laravel.

Să începem…

Ce este API-ul REST?

APi este o interfață de programare a aplicațiilor, care ne ajută să conectăm un dispozitiv la alt dispozitiv, de exemplu soțul/soția avem un site web live și acum dorim să construim o aplicație mobilă, așa că vom crea API pentru a conecta datele la dispozitiv, trebuie să folosim JSON date pentru a trece în dispozitiv, astfel încât acest lucru să poată fi furnizat numai cu API.

Uneori, este nevoie de API comunicatREST de rețea sau API de transfer de stat reprezentativ.

Cum functioneazã?

La început trebuie să instalăm aplicația laravel în sistemul nostru, astfel încât să putem urmări documentația oficială laravel, care ne va ajuta să mergem mai departe. Iată link-ul documentului care poate fi urmat pentru a instala aplicația laravel:

http://laravel.com/

Pentru a instala aplicația, vă rugăm să utilizați această comandă, dar asigurați-vă că ar trebui să aveți compozitor în sistemul dvs., deoarece compozitorul este un instrument de dependență care vă ajută să instalați toate dependențele în aplicație, puteți urma acest link:

https://getcomposer.org/download/

Odată ce ați instalat Composer, puteți descărca laravel, vă rugăm să utilizați această comandă:

compozitor create-project --prefer-dist laravel/laravel laravel-sanctum-auth

Odată ce proiectul este instalat, trebuie să setați detaliile bazei de date în fișierul .ENV, așa că trebuie doar să completați baza de date în fișierul ENV.

Cum functioneazã Următorul pas este să instalați pachetul API. Există multe pachete disponibile, dar puteți instala după alegerea dvs.

Deci, pentru a instala pachetul, trebuie să urmați comanda conform documentației laravel. Pe măsură ce voi folosi Sanctum, voi folosi această comandă:

compozitorul necesită laravel/sanctum

  După ce rulez această comandă, pachetul meu va fi instalat și va fi gata de utilizare. Doar urmați captura de ecran de mai jos: Cum funcționează 2

Odată ce am terminat cu configurarea pachetului, următorul pas este crearea unui model pentru baza de date. Vom crea un mod și o migrare care se va conecta la baza de date directă,

app/Modele/Fișier User.php.

<?php

spațiu de nume Aplicație\Modele;

utilizați Illuminate\Contracts\Auth\MustVerifyEmail;

utilizați Illuminate\Database\Eloquent\Factory\HasFactory;

utilizați Illuminate\Foundation\Auth\User ca Autentificabil;

utilizați Illuminate\Notificări\Notifiable;

// sanctuar

utilizați Laravel\Sanctum\HasApiTokens;

clasa User extinde Authenticatable

{

utilizați HasApiTokens, HasFactory, Notifiable;

 

/**

* Atributele care sunt atribuibile în masă.

*

* @var matrice

*/

protejat $fillable = [

'Nume',

'e-mail',

'parola',

];

 

/**

* Atributele care ar trebui ascunse pentru matrice.

*

* @var matrice

*/

protejat $hidden = [

'parola',

„remember_token”,

];

 

/**

* Atributele care ar trebui distribuite la tipuri native.

*

* @var matrice

*/

protejate $casts = [

'email_verified_at' => 'datatime',

];

}

Cum funcționează 3

  Acum trebuie să creăm un controler, așa că vă rugăm să utilizați această comandă pentru a crea un controler

Php artisan make::controller NUME CONTROLLER

fișier app/Http/Controllers/API/BaseController.php:

<?php



spațiu de nume App\Http\Controllers\API;

utilizați Illuminate\Http\Request;

utilizați App\Http\Controllers\Controller ca controler;



clasa BaseController extinde Controller

{

/**

* metoda de răspuns cu succes.

*

* @return \Illuminate\Http\Response

*/

funcția publică sendResponse($rezultat, $mesaj)

{

$răspuns = [

„succes” => adevărat,

'data' => $rezultat,

'message' => $mesaj,

];

 

return response()->json($response, 200);

}



/**

* returnează răspunsul de eroare.

*

* @return \Illuminate\Http\Response

*/

funcția publică sendError($eroare, $errorMessages = [], $code = 404)

{

$răspuns = [

'succes' => fals,

'message' => $eroare,

];

 

if(!empty($errorMessages)){

$response['data'] = $errorMessages;

}

 

return response()->json($response, $code);

}

}

Vă rugăm să rețineți: ori de câte ori creăm API, trimitem întotdeauna răspunsul în JSON cu codul de stare.

Cum funcționează 4

Pentru API creăm întotdeauna un token de autentificare. Înseamnă că dacă tokenul va fi creat și verificat, atunci putem autentifica utilizatorii.

<?php

spațiu de nume App\Http\Controllers\API;

utilizați Illuminate\Http\Request;

utilizați App\Http\Controllers\API\BaseController ca BaseController;

utilizați Illuminate\Support\Facades\Auth;

utilizați Validator;

utilizați App\Modele\Utilizator;

clasa AuthController extinde BaseController

{

conectare la funcția publică (Solicitare $request)

{

if(Auth::attempt(['email' => $cerere->e-mail, 'parolă' => $cerere->parolă])){

$authUser = Auth::user();

$success['token'] = $authUser->createToken('MyAuthApp')->plainTextToken;

$success['name'] = $authUser->name;

return $this->sendResponse($success, 'Utilizatorul conectat');

}

altfel{

return $this->sendError('Neautorizat.', ['error'=>'Neautorizat']);

}

}

înscriere la funcția publică (Solicitare $request)

{

$validator = Validator::make($request->all(), [

'name' => 'obligatoriu',

'email' => 'obligatoriu|e-mail',

„parolă” => „obligatoriu”,

'confirm_password' => 'necesar|same:parola',

]);

if($validator->fails()){

return $this->sendError('Validare eroare', $validator->errors());

}

$input = $cerere->toate();

$input['parola'] = bcrypt($input['parola']);

$user = Utilizator::create($input);

$success['token'] = $user->createToken('MyAuthApp')->plainTextToken;

$success['name'] = $user->name;

return $this->sendResponse($success, 'Utilizatorul creat cu succes.');

}

}

Acest fișier de rută:

Cum funcționează 5 În cele din urmă, pentru a rula proiectul, trebuie să rulăm această comandă:

php artisan serve

Încheierea

API-urile alimentează multe dintre cele mai populare site-uri web și servicii de astăzi, de la rețele sociale la aplicații financiare. În acest blog, ți-a fost prezentat API-ul REST în Laravel. Sperăm că acest lucru a pus bazele înțelegerii dvs. despre ce este API-ul REST și cum funcționează.

Dacă sunteți în căutarea unor servicii de dezvoltare web, nu trebuie să căutați mai departe. La webdew, veți putea găsi o echipă proactivă de designeri web și dezvoltatori calificați pentru a vă proiecta și construi site-ul web al afacerii dvs. Contactați-ne pentru a afla mai multe.