TP6在路由文件中同时使用跨域和中间件引起的跨域失败问题的解决过程

在TP6文档中,写路由文件可以连贯操作middleware和allowcrossdomain,并且里面可以配置参数,我一偷懒,就两个都用了,如下图,之前没有增加Middleware的时候好使,能跨域,但后来要用中间件了,就出现跨域不好用了。折腾好久

 

 

后来想明白了,两个连贯操作(middleware allowcrossdomain)底层都是中间件实现的,所以两者只能2选1,所以只能改成只用middleware,路由文件改成下面的写法好使了。

Route::group("/", function () {
    Route::group('admin/', function () {
        Route::group("user/", function () {
            Route::get('index', 'system.User/index');
            Route::post('add', 'system.User/add');
            Route::post('update', 'system.User/update');
            Route::post('delete', 'system.User/deleteById');
            Route::get('find', 'system.user/find');
            Route::get('init', 'system.user/init');
        });
    });
    Route::get("logout", "login/logout");
})->middleware(
    [
        \app\middleware\MyCrossDomain::class,
        \app\middleware\CheckTokenMiddle::class
    ]
)
;

 

posted @ 2022-12-21 20:20  趟坑的  阅读(682)  评论(0编辑  收藏  举报