## 子域名路由
~~~
// 子域名路由
Route::group(["domain" => "x.laravel.com"], function(){
Route::get("no1/test20/{arg}", function($arg){
return "Test.20.".$arg;
});
});
~~~
按官方文档来说应该可以这样`["domain" => "{sub_domain}.laravel.com"]`,然后路由组里的路由都可以引用到`$sub_domain`变量,但是我这没法测试,暂时先不管这里。
## 路由组前缀限制
~~~
// 路由组前缀限制
Route::group([
"prefix" => "controller/{conn}",
"where" => ["conn" => "[aaaa|bbbb]+"]
], function(){
Route::get("cccc", function($conn){
return "Test.21.".$conn;
});
});
~~~
## CSRF保护
~~~
// CSRF保护
/*Route::group(["middleware" => "VerifyCsrfToken"], function(){
Route::get("no1/csrf", function(){
return view("n1/csrf");
});
});*/
~~~
被迫中断,提示中间件不存在,可能是命名空间的问题
另外,如果有需要某些路径下不通过CSRF保护,可以在`F:\wwwroot\Laravel\wechat\app\Http\Middleware\VerifyCsrfToken.php`文件里设置,官网案例如下。
~~~
protected $except = [
'stripe/*',
];
~~~
## 抛出错误
~~~
// 抛出指定HTTP状态类型的错误
Route::get("/no1/test23", function(){
// abort(404);
abort(500);
return "404错误哦";
});
// 抛出指定异常错误
Route::get("/no1/test24", function(){
// throw new Symfony\Component\HttpKernel\Exception\HttpException(404);
// throw new Symfony\Component\HttpKernel\Exception\HttpException(500);
throw new Symfony\Component\HttpKernel\Exception\NotFoundHttpException();
return "出错了!";
});
~~~
## 路由绑定模型
这章节没法做,需要等到了解了后面的模型概念后才能继续