[英]How to make URL from Laravel routes
我有 Laravel 后端,我正在嘗試為它制作 iOS,但沒有文檔。 這是我第一次使用 Laravel,對路由和中間件很困惑。 如何從下面的代碼組成 URL
Route::middleware('auth:api')->get('/user', function (Request $request) {
return $request->user();
});
// Passport authentication
Route::group([
'prefix' => 'auth'
], function () {
Route::post('login', 'AuthController@login');
Route::post('signup', 'AuthController@signup');
Route::group([
'middleware' => 'auth:api'
], function() {
Route::get('logout', 'AuthController@logout');
Route::get('user', 'AuthController@user');
Route::resource('materials', 'MaterialsController');
Route::resource('packages', 'PackagesController'); ```
命名您的路線並使用route()
助手獲取路線的完整 URL。 例如;
// In routes/web.php
Route::get('logout', 'AuthController@logout')->name('auth.logout');
// Anywhere in your context
route('auth.logout'); // will return full URL, e.g; 'http://localhost/logout'
有關更多詳細信息,請參閱此鏈接;
https://laravel.com/docs/8.x/routing#generating-urls-to-named-routes https://laravel.com/docs/8.x/helpers#method-route
您的路線的完整路徑是某些部分組合的結果:
以web.php
定義的如下路由為例:
// web.php
Route::get('my-cool-route', MyCoolController::class);
然后,該端點將具有以下完整路徑:
foobar.com/my-cool-route
^^^^^^^^^^^^^
foobar.com
部分將從.env
文件的APP_URL
鍵中.env
你也可以已經為路由添加了前綴(由你或 Laravel),例如寫在api.php
文件中的api.php
:
// api.php
Route::get('register', SignUpController::class);
默認情況下, api.php
的路由將以api
為前綴。 所以路線看起來像這樣:
foobar.com/api/register
^^^^^^^^^^^^^
如果你想知道這個前綴是在哪里添加的,你可以去RouteServiceProvider.php
看看它是如何應用的。
您可以在 Artisan 的幫助下輸出您的路線列表。
php artisan route:list
當然,這會拋出你所有的站點路由,所以你可以通過很多選項來過濾它們,比如path
example:
php artisan route:list --path='materials'
這將列出路徑與%materials%
匹配的所有路線。
您可以使用--help
(或-h
)選項查看過濾器選項的完整列表。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.