Frohes Neues Jahr!
Das Jahr hat gerade erst begonnen, und ich hoffe, eure Vorsätze für 2025 beinhalten auch großartige Coding-Projekte – vielleicht sogar APIs mit der Mojura-Architektur von Laravel? Klingt aufregend, oder?Was ist die Mojura-Architektur?
Mojura ist der neueste Architekturstil in Laravel, der speziell für API-Projekte entwickelt wurde. Er kombiniert Modularität mit einem sauberen, wartbaren Code. Stellen Sie sich Mojura wie ein perfekt organisiertes Bücherregal vor – alles hat seinen Platz, und nichts liegt kreuz und quer herum.Los geht’s: Die Basis schaffen
Schritt 1: Mojura-Projekt initialisieren
Fangen wir mit dem Wichtigsten an: ein Mojura-Projekt erstellen. Gebt diesen Befehl in euer Terminal ein:composer create-project laravel/laravel my-mojura-api
Sobald Laravel eingerichtet ist, installiert ihr das Mojura-Paket:
composer require laravel/mojura
Das ist wie der Moment, wenn man ein frisch eingerichtetes Wohnzimmer betritt – alles riecht neu und aufregend!
Schritt 2: Module erstellen
In Mojura dreht sich alles um Module. Jedes Modul repräsentiert eine spezifische Funktion eurer API. Hier erstellen wir beispielsweise ein User-Modul:php artisan make:module User
modules/
|-- User/
|-- Controllers/
|-- Models/
|-- Routes/
use Illuminate\Support\Facades\Route;
Route::get('/users', [UserController::class, 'index']);
Schritt 4: Der Controller
Der Controller sorgt dafür, dass eure Route etwas Sinnvolles zurückgibt. Erstellt einen Controller für euer Modul:php artisan make:controller UserController --module=User
namespace App\Modules\User\Controllers;
use App\Http\Controllers\Controller;
class UserController extends Controller
{
public function index()
{
return response()->json(['message' => 'Willkommen bei Mojura!']);
}
}
Schritt 5: Der Extra-Tipp – Middleware einbinden
Mojura macht es einfach, Middleware für Module zu registrieren. Wollt ihr z. B. sicherstellen, dass nur authentifizierte Benutzer die API nutzen? Kein Problem:namespace App\Modules\User\Middleware;
use Closure;
class Authenticate
{
public function handle($request, Closure $next)
{
if (!auth()->check()) {
return response()->json(['error' => 'Unauthorized'], 401);
}
return $next($request);
}
}
Kommentare 0
Noch keine Kommentare. Seien Sie der Erste!