【发布时间】:2017-05-08 17:13:57
【问题描述】:
我对 Laravel 有疑问。我正在开发一个 api,每次 rout 给我 200。如果 routes/api.php 中不存在该路由,我想创建一个 404 错误页面
这些是我的路线:
Route::group(['prefix' => 'v1'], function($request) {
//Account management
Route::group(['prefix' => 'auth'], function ($request) {
Route::post('/login', 'API\V1\AuthController@login');
Route::post('/register', 'API\V1\AuthController@register');
Route::get ('/logout', 'API\V1\AuthController@logout');
Route::post('/reset', 'API\V1\AuthController@reset');
});
//AUTHENTICATED ROUTES
Route::group(['middleware' => 'jwt'], function ($request) {
//Api info
Route::group(['prefix' => 'auth'], function ($request) {
Route::get ('/appdata', 'API\V1\AuthController@appdata');
});
//Workouts
Route::group(['prefix' => 'calls'], function ($request) {
Route::get('/', 'API\V1\WorkoutController@viewAll');
Route::get('/{workout_id}', 'API\V1\WorkoutController@get');
});
//Products
Route::group(['prefix' => 'products'], function ($request) {
Route::get('/', 'API\V1\ProductController@viewAll');
Route::get('/{product_id}', 'API\V1\ProductController@get');
//Route::post('/add', 'API\V1\ProductController@add');
});
//Users
Route::group(['prefix' => 'users'], function ($request) {
Route::get('/', 'API\V1\UserController@getUsers');
Route::get('/{id}/', 'API\V1\UserController@getById');
});
});
});
例如如果我去:localhost:/abc -> 我想加载一个 404 错误页面。
谢谢!
【问题讨论】:
-
当您点击
localhost/abc时,它当前返回什么?默认情况下,它会为任何没有定义路由的东西返回 404,你必须在某个地方定义它。 -
如果我走那条路线,我得到 200。我可以去任何我想要的路线,仍然得到 200。
-
该文件是您的主要 routes.php 文件吗?
-
我有 2 个文件:一个用于 api,一个用于网页,位于:routes/web.php 和 routes/api.php,我添加问题的代码来自 api .php
-
也向我们展示主要的,您是通过 nginx 连接还是在本地开发环境上工作?也粘贴该配置。