uniapp路由传多个参数_Laravel 路由详解

4d76d754378e6771705d1f24d3456f9b.png

Laravel路由

laravel是一个强路由的框架,所有的请求都必须先定义好路由才能访问。

1、路由配置文件

路由文件的位置:项目目录/routes/web.php文件

2、4种基础路由的定义(重点)

Route::请求方式('uri',匿名函数);
#从服务器取出资源(一项或多项) 
Route::get($uri, $callback);
#在服务器新建一个资源 insert
Route::post($uri, $callback);
#在服务器更新资源  update
Route::put/patch($uri, $callback);
#从服务器删除资源 delete
Route::delete($uri, $callback);
4种基础路由中,只有GET请求方式不进行CSRF验证,其它请求方式则需要CSRF验证

3、CSRF

1.CSRF(Cross-site request forgery)跨站请求伪造,攻击者诱导受害者进入第三方网站,在第三方网站中,向被攻击网站发送跨站请求。利用受害者在被攻击网站已经获取的注册凭证,绕过后台的用户验证,达到冒充用户对被攻击的网站执行某项操作的目的。

2.laravel框架中,路由定义在routes/web.php文件中,就会自带有csrf验证功能。

3.并不是所有请求都需要进行CSRF攻击防御的,比如去第三方API获取数据的请求。可以通过在 app/Http/Middleware/VerifyCsrfToken.php文件中将要排除的请求URI添加到$except属性数组中。

4、其它路由

# 一次性匹配多种请求类型
Route::match(array(请求方式,多个以逗号隔开),$uri, $callback);
# 匹配所有请求 工作不用  不安全
Route::any($uri, $callback);
注:如果路由请求方法没有定义,请求不存在的方法,报405状态

5、路由参数

url地址可以通过query方式去传参数,但是不美观且还不利于seo优化。laravel提供一种路由参数的机制,更佳优美的方式来进行参数的传递。laravel路由参数不用使用$_GET函数来获取,只能通过它自身的方式来获取。

# 必填
Route::get('URI/{参数名称}','闭包函数或控制器响应方法标识');
# 可选
Route::get('URI/{参数名称?}','闭包函数或控制器响应方法标识');
# 参数限制
Route::get('URI/{参数名称}','闭包函数或控制器响应方法标识')->where(['参数名称'=>'正则']);

6、路由别名

作用:方便管理生成的URL地址 和 权限控制

Route::get('/user/{id}',function($id){
	return "当前用户id是:" . $id;
}) -> name('名字');
# 生成了对应的URL地址      参数
$url = route('路由名称',[array(key=>value)]);

7、路由分组之路由前缀

很多路由都有相同的前缀,每次都需要敲一遍太繁琐,所以就可以把统一的前缀摘出来 做路由分组

可以用 prefix 方法为路由组中给定的 URL 增加前缀。例如,你可以为组中所有路由的 URI 加上 admin 前缀:

Route::prefix('admin')->group(function () {
    Route::get('users', function () {
        // 匹配包含 "/admin/users" 的 URL
    });
});

路由名称前缀

name 方法可以用来给路由组中的每个路由名称添加一个给定的字符串。 例如,您可能希望以 「admin」为所有分组路由的名称加前缀。 给定的字符串与指定的路由名称前缀完全相同,因此我们将确保在前缀中提供尾部的 . 字符:

Route::name('admin.')->group(function () {
    Route::get('users', function () {
        // 路由分配名称“admin.users”...
    })->name('users');
});

8、查看定义好的路由

php artisan route:list
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值