Was ist die REST-API in Laravel: Alles, was Sie wissen müssen

Veröffentlicht: 2022-11-03

Die Welt wendet sich vollständig der Einfachheit der Nutzung mobiler Geräte zu und sucht online nach Lösungen. Webdesign und Webentwicklung schreiten in der heutigen Welt massiv voran.

Der größte Teil der Nachfrage richtet sich auf Smartphones, da die Entwicklung von Websites auch die Entwicklung mobiler Apps umfasst. Davon abgesehen erfordert das Backend für mobile Apps eine Restful-API.

Wenn Sie nicht wissen, was REST API ist, ist das in Ordnung! Wir geben dir Deckung.

In diesem Blog werde ich erklären, was Restful API ist und wie es funktioniert. Ich werde auch erklären, wie man eine erholsame API in Laravel entwickelt.

Lass uns anfangen…

Was ist die REST-API?

APi ist eine Anwendungsprogrammierschnittstelle, die uns hilft, ein Gerät mit einem anderen Gerät zu verbinden, zum Beispiel Ehepartner, wir haben eine Website live und jetzt wollen wir eine mobile App erstellen, damit wir eine API erstellen, um Daten mit dem Gerät zu verbinden, wir müssen JSON verwenden Daten zum Übergeben des Geräts, sodass dies nur mit API möglich ist.

Manchmal ist eine Netzwerk-CommunicatREST-API oder eine Representational State Transfer-API erforderlich.

Wie funktioniert es?

Als allererstes müssen wir die Laravel-App in unserem System installieren, damit wir der offiziellen Laravel-Dokumentation folgen können, die uns helfen wird, weiterzukommen. Hier ist der Link des Dokuments, dem Sie folgen können, um die Laravel-Anwendung zu installieren:

http://laravel.com/

Um die App zu installieren, verwenden Sie bitte diesen Befehl, aber stellen Sie bitte sicher, dass Sie Composer in Ihrem System haben sollten, da Composer ein Abhängigkeitstool ist, das hilft, alle Abhängigkeiten in der Anwendung zu installieren, können Sie diesem Link folgen:

https://getcomposer.org/download/

Sobald Sie Composer installiert haben, können Sie Laravel herunterladen, verwenden Sie bitte diesen Befehl:

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

Sobald das Projekt installiert ist, müssen Sie die Datenbankdetails in der .ENV-Datei festlegen, also füllen Sie einfach Ihren Datenbanknamen in der ENV-Datei aus.

Wie funktioniert es Der nächste Schritt besteht darin, das API-Paket zu installieren. Es sind viele Pakete verfügbar, aber Sie können nach Ihrer Wahl installieren.

Um das Paket zu installieren, müssen Sie also dem Befehl folgen, der in der Laravel-Dokumentation angegeben ist. Da ich Sanctum verwenden werde, werde ich diesen Befehl verwenden:

Komponist benötigt Laravel/Sanctum

  Nachdem ich diesen Befehl ausgeführt habe, wird mein Paket installiert und ist einsatzbereit. Folgen Sie einfach dem Screenshot unten: Wie funktioniert es 2

Sobald wir mit der Paketeinrichtung fertig sind, besteht der nächste Schritt darin, ein Modell für die Datenbank zu erstellen. Wir werden einen Modus und eine Migration erstellen, die eine Verbindung zur direkten Datenbank herstellen.

app/Models/User.php-Datei.

<?php

Namensraum App\Models;

Verwenden Sie Illuminate\Contracts\Auth\MustVerifyEmail;

benutze Illuminate\Database\Eloquent\Factories\HasFactory;

Verwenden Sie Illuminate\Foundation\Auth\User als authentifizierbar;

Verwenden Sie Illuminate\Notifications\Notifiable;

// Heiligtum

Verwenden Sie Laravel\Sanctum\HasApiTokens;

Klasse Benutzer erweitert Authenticatable

{

Verwenden Sie HasApiTokens, HasFactory, Meldepflichtig;

 

/**

* Die Attribute, die massenzuweisbar sind.

*

* @var-Array

*/

geschützt $füllbar = [

'Name',

'Email',

'Passwort',

];

 

/**

* Die Attribute, die für Arrays ausgeblendet werden sollen.

*

* @var-Array

*/

geschützt $versteckt = [

'Passwort',

'remember_token',

];

 

/**

* Die Attribute, die in native Typen umgewandelt werden sollen.

*

* @var-Array

*/

geschützte $casts = [

'email_verified_at' => 'datetime',

];

}

Wie funktioniert es 3

  Jetzt müssen wir einen Controller erstellen, verwenden Sie also bitte diesen Befehl, um einen Controller zu erstellen

Php artisan make::controller NAME DES CONTROLLERS

app/Http/Controllers/API/BaseController.php-Datei:

<?php



Namespace App\Http\Controllers\API;

Verwenden Sie Illuminate\Http\Request;

Verwenden Sie App\Http\Controllers\Controller als Controller;



Klasse BaseController erweitert Controller

{

/**

* Erfolgsantwortmethode.

*

* @return \Illuminate\Http\Response

*/

öffentliche Funktion sendResponse($result, $message)

{

$Antwort = [

'Erfolg' => wahr,

'Daten' => $Ergebnis,

'Nachricht' => $Nachricht,

];

 

Antwort zurückgeben () -> json ($ Antwort, 200);

}



/**

* Fehlerantwort zurückgeben.

*

* @return \Illuminate\Http\Response

*/

Öffentliche Funktion sendError($error, $errorMessages = [], $code = 404)

{

$Antwort = [

'Erfolg' => falsch,

'Nachricht' => $Fehler,

];

 

if(!empty($errorMessages)){

$response['data'] = $errorMessages;

}

 

Antwort zurückgeben () -> json ($ Antwort, $ Code);

}

}

Bitte beachten Sie: Wenn wir eine API erstellen, senden wir immer eine Antwort in JSON mit Statuscode.

Wie funktioniert es 4

Für die API erstellen wir immer ein Authentifizierungstoken. Das heißt, wenn ein Token erstellt und verifiziert wird, können wir Benutzer authentifizieren.

<?php

Namespace App\Http\Controllers\API;

Verwenden Sie Illuminate\Http\Request;

Verwenden Sie App\Http\Controllers\API\BaseController als BaseController;

Verwenden Sie Illuminate\Support\Facades\Auth;

Validator verwenden;

Verwenden Sie App\Modelle\Benutzer;

Klasse AuthController erweitert BaseController

{

Anmeldung für öffentliche Funktion (Request $request)

{

if(Auth::attempt(['email' => $request->email, 'password' => $request->password])){

$authUser = Auth::user();

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

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

return $this->sendResponse($success, 'Benutzer angemeldet');

}

anders{

return $this->sendError('Nicht autorisiert.', ['Fehler'=>'Nicht autorisiert']);

}

}

Anmeldung für öffentliche Funktion (Request $request)

{

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

'name' => 'erforderlich',

'email' => 'erforderlich|email',

'Passwort' => 'erforderlich',

'confirm_password' => 'required|same:password',

]);

if($validator->fails()){

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

}

$input = $request->all();

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

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

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

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

return $this->sendResponse($success, 'Benutzer erfolgreich erstellt.');

}

}

Diese Routendatei:

Wie funktioniert es 5 Um das Projekt auszuführen, müssen wir schließlich diesen Befehl ausführen:

php Handwerker dienen

Einpacken

APIs unterstützen viele der beliebtesten Websites und Dienste von heute, von sozialen Netzwerken bis hin zu Finanz-Apps. In diesem Blog wurde Ihnen die REST-API in Laravel vorgestellt. Wir hoffen, dass dies eine Grundlage für Ihr Verständnis dessen geschaffen hat, was die REST-API ist und wie sie funktioniert.

Wenn Sie nach Webentwicklungsdiensten suchen, brauchen Sie nicht weiter zu suchen. Bei webdew finden Sie ein proaktives Team aus erfahrenen Webdesignern und Entwicklern, die Ihre Unternehmenswebsite entwerfen und erstellen. Kontaktieren Sie uns, um mehr zu erfahren.