【已解决】webman路由

0

如何做到
只设置一条路由 /api/* 所有生效
例如 /api/user/query

已邀请:

cai584887013 - 菜鸟程序员

赞同来自: 开赛灵

Route::group('/api/{verion}', function () {
Route::group("/{controller}", function () {
Route::any("/{action}", function (Request $request, $verion, $controller, $action) {
$class_name = 'app\\api\\controller\\' . $verion . '\\' . $controller;
if(!is_dir( 'app\\api\\controller\\' . $verion)){
return json(['code'=>500,'msg'=>$verion.'目录不存在!']);
}
if(!class_exists($class_name)){
return json(['code'=>500,'msg'=>$verion."目录下的控制器: {$controller}不存在!"]);
}
if (!method_exists($class_name, $action)) {
return json(['code'=>500,'msg'=>$verion."目录下的控制器: {$controller}里面的方法: {$action}不存在"]);
}
$controller = new $class_name;
$request->controller = $class_name;
return call_user_func([$controller, $action], $request);
});
});
});

本地目录结构
截图

cai584887013 - 菜鸟程序员

赞同来自:

能不能把api/v1,api/v2弄成自动匹配

要回复问题请先登录注册