猿问

TP5.1路由中间件分组的问题

这样访问没有问题

Route::get('/register', 'index/register/register')->middleware('Login');
Route::get('/login', 'index/login/login')->middleware('Login');

手册上也说了支持路由组的中间件形式

但是改成下面路由组的形式再访问时就报错了 这是怎么回事?

Route::group('/test', function(){
    Route::get('/login', 'index/login/login');
    Route::get('/register', 'index/register/register');
})->middleware('Login');

中间件

<?php
namespace app\http\middleware;
use think\facade\Cookie;
use think\response;
use think\facade\Request;
class Login
{
    public function handle($request, \Closure $next)
    {
        if (Cookie::has('uid')) {
            return redirect('/');
        }else{
            return redirect('/login');
        }
        return $next($request);
    }
}

https://img3.mukewang.com/5c8f3e960001857f08000445.jpg

茅侃侃
浏览 1717回答 5
5回答

梦里花落0921

Route::group('user', function(){ Route::get('login', 'index/login/login'); Route::get('register', 'index/register/register'); })->middleware('Login'); 访问/user/login即可

慕田峪9158850

Route::group('test', function(){ Route::get('test/login', 'index/login/login'); Route::get('test/register', 'index/register/register'); })->middleware('Login'); 试着这样写一下

慕慕森

还有人吗..

四季花海

谢邀,但是平时不用 ThinPHP, 你可以贴一下运行树,比较好排查

牛魔王的故事

Route::group(['test'], function(){ Route::get('login', 'index/login/login'); Route::get('register', 'index/register/register'); })->middleware('Login');这样写,我用的5.1.19,欢迎骚扰。。。
随时随地看视频慕课网APP
我要回答