laravel 常见路由

laravel路由可以接收一个url 或者 一个闭包

Route::get('/', function () {
    return view('welcome');
});

laravel的路由配置目录如下

相应的逻辑在 app/Providers/RouteServiceProvider, web.php路由中的可以使用session 或者 csrf, api.php 是无状态的,其路由访问加上api/即可。
 

laravel有效的路由

Route::match(['get', 'post'], 'match', function (){
    return 'get 或者 post';
});
Route::any('any', function (){
    return 'any';
});
 
 
post 方法记得CSRF安全保护,所以可以在app/Http/Middleware/VerifyCsrfToken 中取消对应路由,否则返回419错误。
Match, 是可以匹配数组中的任意一方法。 Any 是任何方法都可以。 可以添加csrf_token 参数 用csrf_field()函数
 
Route::any('csrf', function(){
    return '<form method="POST" action="/profile">'. csrf_field().'<button type="submit">提交</button></form>';
});
Route::any('profile', function(){
    echo 'post ok';
});
 

laravel路由参数

 
必选参数
Route::any('test/{id}', function($id){
    return 'id : '. $id;
});
 
可选参数
Route::any('test/{id?}', function($id=null){
    return 'id : '. $id;
});
正则约束
Route::any('test/{id}/{name}', function($id, $name){
    return 'id : '. $id. 'name :'. $name;
})->where(['id' => '[0-9]+', 'name' => '[a-zA-Z]+']);
 
 
 
 
 
posted @ 2020-07-17 13:03  wxdr  阅读(354)  评论(0编辑  收藏  举报