无效的 ruote 规则捕获来自 vue-tables-2 组件的请求

Invalid ruote rule to catch request from vue-tables-2 component

在我的@vue/cli 4.0.5 应用程序中使用 vue-tables-2 组件 我看到生成了 GET 请求

http://local-ctasks-api.com/api/adminarea/activity-logs-filter?query=&limit=10&ascending=1&page=1&byColumn=0

我尝试在 Laravel 6 后端 REST API 中设置路由以捕获它:

Route::group(['middleware' => 'jwt.auth',  'prefix' => 'adminarea', 'as' => 'adminarea.'], function ($router) {
    Route::get('activity-logs-filter?query={query}&limit={limit}&ascending={ascending}&page={page}&byColumn={column}', 'API\Admin\ActivityLogController@filter');

但是我得到了 404 错误,

我的路由无效吗?

更新#1: 是的,带有“/api”的 var 是不可访问的。我修复了它并且 运行 请求没有“/adminarea”

http://local-ctasks-api.com/api/activity-logs-filter?query=&limit=10&ascending=1&page=1&byColumn=0

我将路由定义移出了任何块:

Route::get('activity-logs-filter?query={query}&limit={limit}&ascending={ascending}&page={page}&byColumn={column}', 'API\Admin\ActivityLogController@filter');

我在浏览器中遇到错误:

"error": "INCORRECT ROUTE"

使用 app/Http/Controllers/API/Admin/ActivityLogController 中定义的控制操作。php :

public function filter( $query, $limit, $ascending, $page, $column )
{
    \Log::info('!!++ filter $this->requestData ::');
    \Log::info(print_r(  $this->requestData, true  ));

为什么会出错?

谢谢!

我想你忘了把 api 放在 prefix

Route::group(['middleware' => 'jwt.auth',  'prefix' => 'api/adminarea', 'as' => 'adminarea.'], function ($router) {

编辑:

不要那样把参数放在路由上,使用Request实例

Route::get('activity-logs-filter,'API\Admin\ActivityLogController@filter');

和控制器

public function filter(Request $request){
    $query = $request->query;
    $limit = $request->limit;
    $ascending = $request->ascending;
    $page = $request->page;
    $column = $request->column;

不要忘记 use Illuminate\Http\Request; 在你的控制器上