在我的@ 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错误,
我的路线无效吗?
UPDATED#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;