1. get 请求不走控制器-----最简单的写法(不推荐这么写)
Route::get('hello', function () {
return 'Hello Laravel';
});
2.get请求 走控制器UsersController下的index方法
Route::get('user', 'UsersController@index');
3.更多请求方式
Route::get('user', 'UsersController@index');
Route::post('user', 'UsersController@index');
Route::put('user', 'UsersController@index');
Route::patch('user', 'UsersController@index');
Route::delete('user', 'UsersController@index');
Route::options('user', 'UsersController@index');
4.接受多种求方式
只接收制定的请求方式
Route::match(['get', 'post'], 'foo', function () {
return 'This is a request from get or post';
});
接收全部请求方式
Route::any('bar', function () {
return 'This is a request from any HTTP verb';
});
5.重定向----访问aa 会跳转到foo 路由下就像给路由起了个别名
其他路由
Route::match(['get', 'post'], 'foo', function () {
return 'This is a request from get or post';
});
重定向路由
Route::redirect('/aa', 'foo');
自定义状态码
Route::redirect('/aa', 'foo',302);
默认返回状态码301
Route::permanentRedirect('/aa', 'foo');
6. 携带参数---多个路由参数
请求--[http://laravel7.com/api/cs/41/55]
必填参数路由
Route::get('cs/{id}/{comments}', 'Cs\IndexController@index');
选填参数路由------再参数的大括号中加个 ? 就选填
Route::get('cs/{id?}/{comments?}', 'Cs\IndexController@index');
7.命名路由----别名---name 就是路由名称 [user/profile] 或[profile] 访问的路由一致
Route::get('user/profile', 'UserController@showProfile')->name('profile');
8.为命名路由生成 URL---------在方法中通过获取指定路由的全部信息及参数
路由
Route::get('cs/{id}', 'Cs\IndexController@index')->name('cs1');
获取路由信息
$url = route('cs1', ['id' => 1]);
结果
http://laravel7.com/api/cs/1
9.路由分组
添加中间件----CheckToken是中间件名称数组中可添加多个
Route::middleware(['CheckToken'])->group(function () {
Route::get('profile', function () {
return 1;
});
Route::get('profile1', function () {
return 2;
});
Route::get('profile2', function () {
return 3;
});
});
命名空间----Cs是文件夹名称-----一个命名空间下可放多个路由
用命名空间
Route::namespace('Cs')->group(function () {
Route::get('cs', 'IndexController@index');
});
不用命名空间
Route::get('cs', 'Cs\IndexController@index');
路由前缀
Route::prefix('admin')->group(function () {
Route::get('users', function () {
return 1;
});
});
当然还有更多用法,不是看不懂就不好使再就是用不到!
声明在laravel 官网扒的! so 网址为[https://xueyuanjun.com/post/21462#bkmrk-%E8%B7%AF%E7%94%B1%E6%A8%A1%E5%9E%8B%E7%BB%91%E5%AE%9A]