Debug客栈
做一个爱分享的程序猿
Debug客栈
Laravel踩坑日记之路由配置

基本路由

基本路由配置
//基本配置路由
Route::get('jiben', function(){
    echo "Hello World!";
});

加载页面

//加载页面
Route::get('jiazai', function(){
    return view("home");
});
加载控制器
//加载控制器
Route::get('jiben2','JibenController@index');

创建控制器

手动创建
需要将已有控制器复制一份,并进行重命名,一定注意文件名必须和类名一致
aitisan创建
php artisan make:controller IndexController;

路由类型

类型
Route::get($uri, $callback);
Route::post($uri, $callback);
Route::put($uri, $callback);
Route::patch($uri, $callback);
Route::delete($uri, $callback);
Route::options($uri, $callback);
Get操作
//登录操作
Route::get('login', 'LoginController@index');
Post操作
//处理登陆操作
Route::post('check', 'LoginController@check');
Put操作

路由定义

//put请求
Route::get('putweb', 'LoginController@putweb');

//put请求处理页面
Route::put('put', 'LoginController@put');
Controller 控制器定义
/*
 * put操作
 */
public function putweb(){
    return view('putweb');  
}

/*
 * put处理操作
 */
public function put(){
    dd($_POST);
}
view 视图定义
<form action="put" method="post">
    {{--登陆防止跨站攻击--}}
    {{csrf_field()}}
    <input type="hidden" name="_method" value="put">
    <p>
        User:
        <input type="text" name="username" id="">
    </p>
    <p>
        Pass:
        <input type="password" name="password" id="">
    </p>
    <p>
        <input type="submit" value="提交">
        <input type="reset" value="重置">
    </p>
</form>

CSRF 保护

Laravel 可以轻松使地保护你的应用程序免受 cross-site request forgery (CSRF)攻击,跨站点请求伪造是一种恶意攻击,它凭借已通过身份验证的用户身份来运行未经过授权的命令。

一个路由实现多种请求

match请求
可以实现自定义请求。
Route::match(['get', 'post'], '/', "IndexController@index");
any请求
可以实现全部请求类型。
Route::any('/', "IndexController@index");

资源路由

实例
后台拥有很多模块,用户模块、管理模块(增、删、查、改)
Route::get('user/index', 'UserController@index');
Route::get('user/add',   'UserController@add');
Route::get('user/edit',  'UserController@edit');
Route::post('user/insert', 'UserController@insert');
Route::post('user/update', 'UserController@update');
Route::get('user/delete', 'UserController@delete');
资源路由
Route::resource('Admin','IndexController');

https://www.debuginn.cn/wp-content/uploads/2019/05/image-8-2.png

带参数的路由

1 带参数的路由
Route::get('user/del/{id}',function($id){
    echo $id;
});
2 带多个参数的路由
Route::get('userInfo/{name}/{sex}', function($name, $sex){
    echo $name;
    echo $sex;
});
3 设置路由默认值
//设置路由的默认值
Route::get('user/edit/{id?}', function($id="默认值"){
    echo $id;
});
4 带参数访问到控制器
//带参数访问控制器
Route::get('userInfo/{name}/{sex}',"IndexController@UserInfo");

//带参数访问控制器Demo
public function UserInfo($a, $b){
    var_dump($a);
    var_dump($b);
}

命名路由

Route::get('abc', 'IndexController@abc')->name('one');

# 获取别名的url地址
route('one');

#通过命名路由实现重定向
return redirect()->route('one');

路由组

中间件
命名空间
/*
 * 路由组 -- 后台
 */

Route::group(['namespace'=>'Admin'], function(){
    Route::get('admin', 'IndexController@index');
    Route::get('admin/user', 'UserController@index');
    Route::get('admin/goods', 'GoodsController@index');
});

/*
 * 路由组 -- 前台
 */

Route::group(['namespace'=>'Home'], function(){
    Route::get('/', 'IndexController@index');
});
赞赏
本文链接:https://www.debuginn.cn/2325.html
本文采用 CC BY-NC-SA 3.0 Unported 协议进行许可,转载请保留文章链接
Debug客栈  |  Debug客栈引导页  |  Debug客栈交流群  |  赞助本站  |  博主微博  |  音乐下载器

发表评论

textsms
account_circle
email

Debug客栈

Laravel踩坑日记之路由配置
基本路由 基本路由配置 //基本配置路由 Route::get('jiben', function(){ echo "Hello World!"; }); 加载页面 //加载页面 Route::get('jiazai', function(){ return view("…
扫描二维码继续阅读
2019-04-07
文章日历
2019年七月
« 6月    
1234567
891011121314
15161718192021
22232425262728
293031  
近期评论
统计数据
  • 1
  • 290
  • 9,318
  • 4,740
  • 24
  • 284
  • 190
  • 2019年7月13日
本站存活