Link zum Live-Produktionsaufbau
Willkommen zu einem weiteren meiner API-Projekte. Für dieses Projekt habe ich eine Laravel-Anwendung als Teil eines Full-Stack-Projekts geschrieben, getestet und bereitgestellt und dabei viele der leistungsstarken Funktionen des Frameworks genutzt, darunter:
Diese API verarbeitet Daten zu Benutzern/Kandidaten und deren Prüfungen. Es ermöglicht einem Benutzer beispielsweise, Informationen über Prüfungsorte/-orte, Termine, Kandidatennamen usw. anzuzeigen.
// To sign up as an admin, make a POST request to https://laravel-php-api.vercel.app/public/api/signup and include a request body in the following format:
{
"name" : " Anna Torpid " ,
"email" : " [email protected] " ,
"password" : " dfbdf9suhfd9shf " ,
"password_confirmation" : " dfbdf9suhfd9shf "
}
// To login, make a POST request to https://laravel-php-api.vercel.app/public/api/login and include a request body in the following format:
{
"email" : " [email protected] " ,
"password" : " dfbdf9suhfd9shf "
}
// The above POST request returns this response. Make sure to include the returned token in the authorisation header of all future requests.
{
"user" : {
"id" : 11 ,
"name" : " Anna Torpid " ,
"email" : " [email protected] "
},
"token" : " 5|tAujbY9luWTKquNEruGHU7soCXp7MuzVb8WR0VO9 "
}
Sobald Sie sich registriert oder eingeloggt haben, erhalten Sie ein API-Token, das an Ihre Anforderungsheader angehängt werden muss, um den vollständigen CRUD-Zugriff zu gewährleisten.
Um auf jeden Endpunkt zuzugreifen, hängen Sie das URI-Fragment an den Stamm-Endpunkt an. Sie können weitere Details anzeigen, indem Sie den Root-Endpunkt besuchen.
Ressource | Beschreibung | Authentifizierung/Autorisierung |
---|---|---|
POST /Anmeldung | Neues Konto erstellen. | Öffentlich |
POST /Anmelden | Melden Sie sich bei Ihrem bestehenden Konto an. | Öffentlich |
GET /logout/{id} | Abmelden (widerruft Token). | Nur angemeldete Benutzer |
GET /exams | Zeigt eine Liste aller Prüfungen an. Enthält 5 optionale Abfrageparameter . | Nur für Administratoren |
GET /exams/{id} | Holen Sie sich eine spezifische Prüfung. | Kann nur eigene Prüfungen sehen |
PUT /exams/{id} | Ändern Sie eine bestimmte Prüfung. | Kann nur eigene Prüfungen bearbeiten |
GET /exams/search/{name} | Teilstringsuche nach einem bestimmten Kandidaten. | Nur für Administratoren |
LÖSCHEN /exams/{id} | Prüfung löschen. | Kann nur die eigene Prüfung löschen |
GET /users | Liste aller Benutzer abrufen. | Nur für Administratoren |
GET /users/{id}/exams | Liste aller Prüfungen für einen Benutzer abrufen | Kann nur eigene Prüfungen sehen |
Stellen Sie zunächst sicher, dass PHP und Composer auf Ihrem Computer installiert sind.
Mindestversionsanforderungen: PHP ^8.1 ; Komponist 2.5.4 .
Forken und klonen Sie das Repository.
cd in das Repository und führen Sie diese CLI-Befehle aus:
composer update
composer install
Benennen Sie Ihre .env.example
Datei in .env
um, entfernen Sie die Variablen für die Standard-MySQL-Verbindung und stellen Sie sicher, dass Sie die folgenden drei Variablen hinzufügen:
DB_CONNECTION=sqlite
DB_FOREIGN_KEYS=true
USE_SQLITE_SYNTAX=like
DB_DATABASE= this needs to be the absolute path to the sqlite database located in ./database/database.sqlite, e.g. /home/username/mydocuments/laravel-api/database/database.sqlite*
Um den lokalen Entwicklungsserver hochzufahren, führen Sie den Artisan-CLI-Befehl aus:
php artisan serve
Um den Testanzug auszuführen, führen Sie den Artisan CLI-Befehl aus:
php artisan test