Php 未找到laravel路线,但存在该路线
我有以下路线:Php 未找到laravel路线,但存在该路线,php,laravel,http,routes,Php,Laravel,Http,Routes,我有以下路线: +--------+----------+-------------------------------------------------+-----------------------------------+---------------------------------------------------------------------------+------------------+ | Domain | Method | URI
+--------+----------+-------------------------------------------------+-----------------------------------+---------------------------------------------------------------------------+------------------+
| Domain | Method | URI | Name | Action | Middleware |
+--------+----------+-------------------------------------------------+-----------------------------------+---------------------------------------------------------------------------+------------------+
| | GET|HEAD | / | | Closure | web |
| | POST | api/ace/projects/{id_ccie}/project | api. | App\Http\Controllers\ProjectController@aceProjectCcieStore | api |
| | | | | | auth:api |
| | | | | | CheckUserTypeAce |
| | DELETE | api/ace/projects/{id_ccie}/project/{id_project} | api. | App\Http\Controllers\ProjectController@aceProjectCcieDestroy | api |
| | | | | | auth:api |
| | | | | | CheckUserTypeAce |
| | GET|HEAD | api/ace/projects/{id_ccie}/project/{id_project} | api. | App\Http\Controllers\ProjectController@aceProjectCcieShow | api |
| | | | | | auth:api |
| | | | | | CheckUserTypeAce |
| | PUT | api/ace/projects/{id_ccie}/project/{id_project} | api. | App\Http\Controllers\ProjectController@aceProjectCcieUpdate | api |
| | | | | | auth:api |
| | | | | | CheckUserTypeAce |
| | GET|HEAD | api/ace/projects/{id_ccie}/{pg?} | api. | App\Http\Controllers\ProjectController@aceProjectCcieIndex | api |
| | | | | | auth:api |
如果我尝试访问:
api/ace/projects/{id_ccie}/{pg?}
(名单的最后一位)
我得到了一个错误:
Symfony\Component\HttpKernel\Exception\MethodNotAllowedHttpException:此路由不支持GET方法。支持的方法:POST。在第117行的文件…/vendor/laravel/framework/src/illumb/Routing/AbstractRouteCollection.php中
我不明白为什么
我的路由文件是:
Route::group([
'prefix' => 'ace',
'as' => 'api.',
'middleware' => ['auth:api','CheckUserTypeAce'] //ace
], function () {
Route::post('/projects/{id_ccie}/project', [ProjectController::class, 'aceProjectCcieStore']) ->missing(function (Request $request) {
return response()->json(['message' => 'not found'], 404);
})->where(['id_ccie' => '[0-9]+']);
Route::get('/projects/{id_ccie}/{pg?}', [ProjectController::class, 'aceProjectCcieIndex']) ->missing(function (Request $request) {
return response()->json(['message' => 'not found'], 404);
})->where(['id_ccie' => '[0-9]+']);
Route::put('/projects/{id_ccie}/project/{id_project}', [ProjectController::class, 'aceProjectCcieUpdate']) ->missing(function (Request $request) {
return response()->json(['message' => 'not found'], 404);
})->where(['id_ccie' => '[0-9]+','id_project' => '[0-9]+']);
Route::get('/projects/{id_ccie}/project/{id_project}', [ProjectController::class, 'aceProjectCcieShow']) ->missing(function (Request $request) {
return response()->json(['message' => 'not found'], 404);
})->where(['id_ccie' => '[0-9]+','id_project' => '[0-9]+']);
Route::delete('/projects/{id_ccie}/project/{id_project}', [ProjectController::class, 'aceProjectCcieDestroy']) ->missing(function (Request $request) {
return response()->json(['message' => 'not found'], 404);
})->where(['id_ccie' => '[0-9]+','id_project' => '[0-9]+']);
删除路由组中的“前缀”没有帮助
谢谢您的帮助。您是否尝试过清除路由缓存?是的,忘了提及!你要去的确切路线是什么?你有没有其他可能会干扰的路线?@JahStation。我尝试过不使用中间件,效果很好。只需登录middlewarea即可