Heim  >  Artikel  >  PHP-Framework  >  In welchem ​​Verzeichnis befindet sich die Laravel-Routing-Datei?

In welchem ​​Verzeichnis befindet sich die Laravel-Routing-Datei?

青灯夜游
青灯夜游Original
2022-04-28 13:07:474810Durchsuche

Laravel-Routing-Dateien befinden sich im Verzeichnis „routes“. Alle Routing-Dateien in Laravel sind im Routenverzeichnis definiert und der Inhalt darin wird automatisch vom Framework geladen. In diesem Verzeichnis gibt es vier Standard-Routing-Dateien zur Verwendung durch verschiedene Eingänge: web.php, api.php, console. php warte.

In welchem ​​Verzeichnis befindet sich die Laravel-Routing-Datei?

Die Betriebsumgebung dieses Tutorials: Windows 7-System, Laravel 6-Version, DELL G3-Computer.

Es ist sehr praktisch, einfach eine Route in Laravel zu definieren, indem man einfach einen URI und einen Abschluss übergibt.

Route::get('foo', function () {
    return 'Hello World';
})

Alle Routen in Laravel sind im Routenverzeichnis definiert und der Inhalt in diesem Verzeichnis wird automatisch vom Framework geladen. Im Routenverzeichnis gibt es vier Standard-Routing-Dateien zur Verwendung durch verschiedene Eingänge: web.php, api.php, console.php undchannels.php.

  • Die in der Datei web.php enthaltenen Routen befinden sich alle innerhalb der von RouteServiceProvider definierten Einschränkungen der Web-Middleware-Gruppe und unterstützen somit Sitzungs-, CSRF-Schutz- und Cookie-Verschlüsselungsfunktionen, wenn die Anwendung keinen zustandslosen RESTful-Stil bereitstellen muss API, dann werden Routen grundsätzlich in der Datei web.php definiert. Die in der Datei

  • api.php enthaltenen Routen unterliegen den Einschränkungen der API-Middleware-Gruppe und unterstützen die Frequenzbegrenzungsfunktion. Diese Routen sind zustandslos, sodass Anforderungen, die über diese Routen in die Anwendung gelangen, über Token authentifiziert werden müssen und nicht Zugriff auf den Sitzungsstatus.

  • Die Datei console.php wird zum Definieren aller abschlussbasierten Konsolenbefehle verwendet. Jeder Abschluss ist an einen Konsolenbefehl gebunden und ermöglicht die Interaktion mit Befehlszeilen-E/A-Methoden. Diese Datei definiert zwar kein HTTP-Routing, aber sie definiert Konsolenbasierter Anwendungseintrag (Routing). Die Datei

  • channels.php wird verwendet, um alle von der Anwendung unterstützten Event-Broadcast-Kanäle zu registrieren.

Viele Projekte werden grundsätzlich unter Verwendung von Routen/web.php als Ausgangspunkt entwickelt, wodurch die Notwendigkeit einer schnellen Projektentwicklung erkannt werden kann. Auf in Routen/web.php definierte Routen kann direkt im Browser zugegriffen werden. Geben Sie beispielsweise die Adresse „http://your-app.dev/user“ in den Browser ein, um auf die folgende Route zuzugreifen:

Route::get('/user', 'UsersController@index');

Die in „routes/api.php“ definierten Routen sind in einer Routinggruppe verschachtelt, die in „RouteServiceProvider“ festgelegt ist. Die Routen in dieser Gruppe verwenden alle das URI-Präfix /api, sodass Sie dieses Präfix beim Definieren der Route nicht manuell hinzufügen müssen. Wenn Sie das Präfix /api nicht verwenden möchten, können Sie es in RouteServiceProvider ändern.

/**
 * Define the "api" routes for the application.
 *
 * These routes are typically stateless.
 *
 * @return void
 */
protected function mapApiRoutes()
{
    Route::prefix('api')
         ->middleware('api')
         ->namespace($this->namespace)
         ->group(base_path('routes/api.php'));
}

Verfügbare Routing-Methoden

Für jeden HTTP-Anforderungstyp steht eine entsprechende Routing-Methode zur Verfügung:

Route::get($uri, $callback);
Route::post($uri, $callback);
Route::put($uri, $callback);
Route::patch($uri, $callback);
Route::delete($uri, $callback);
Route::options($uri, $callback);

Manchmal muss eine Route in der Lage sein, mit mehreren Anforderungstypen übereinzustimmen. In diesem Fall kann die Match-Methode verwendet werden.

Route::match(['get', 'post'], '/', function () {
    //
});

Wenn Sie möchten, dass eine Route allen Anforderungstypen entspricht, verwenden Sie die beliebige Methode:

Route::any('foo', function () {
    //
});

CSRF-Schutz

Verwenden Sie Routen, die durch Route::post, Route::put, Route::patch und Route:: definiert sind. delete , sodass HTML-Formulare, die auf sie zugreifen, ein CSRF-Token übergeben müssen, andernfalls wird die Anfrage abgelehnt. Weitere Informationen hierzu finden Sie in der CSRF-Dokumentation.

<form method="POST" action="/profile">
    {{ csrf_field() }}
    ...
</form>

Routing umleiten

Wenn Sie eine Route auf eine andere umleiten möchten, können Sie die Route::redirect-Methode verwenden. Dies erspart Ihnen die Mühe, eine vollständige Route oder einen Controller zu definieren, um eine einfache Umleitung durchzuführen:

Route::redirect(&#39;/here&#39;, &#39;/there&#39;, 301);

Routing anzeigen

Wenn Sie einfach nur eine Ansicht zurückgeben möchten, können Sie die Route::view-Methode verwenden, ähnlich wie Route: Die :redirect-Methode erspart auch Ärger. Der erste Parameter der Ansichtsmethode ist der URI und der zweite Parameter ist der Ansichtsname. Darüber hinaus können Sie auch den optionalen dritten Array-Typ-Parameter verwenden, um Daten an die Ansicht zu übergeben:

Route::view(&#39;/welcome&#39;, &#39;welcome&#39;);
Route::view(&#39;/welcome&#39;, &#39;welcome&#39;, [&#39;name&#39; => &#39;Taylor&#39;]);

[Verwandte Empfehlungen: Laravel-Video-Tutorial]

Das obige ist der detaillierte Inhalt vonIn welchem ​​Verzeichnis befindet sich die Laravel-Routing-Datei?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Vorheriger Artikel:Was sind Laravel-Funktionen?Nächster Artikel:Was sind Laravel-Funktionen?