You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Laravel 8.0中设置API路由?访问api/register返回404如何解决

Laravel 8.x API注册接口404问题排查方案
  • 核对路由前缀与请求方式
    你在api.php中将注册路由放在了prefix => v1的路由组下,且注册路由声明为POST类型,因此:
    1. 正确的访问地址应为 http://127.0.0.1:8000/api/v1/register,而非你当前使用的 /api/register
    2. Postman必须选择POST请求方式,浏览器直接访问默认是GET请求,必然返回404
  • 检查Laravel 8路由命名空间配置
    Laravel 8默认取消了路由服务提供者的默认命名空间前缀,如果你没有手动修改RouteServiceProvider的$namespace属性,直接写UsersController@register会无法找到控制器,两种修复方案:
    1. 引入控制器类后使用数组写法:
    use App\Http\Controllers\UsersController;
    
    Route::group(['prefix' => 'v1'], function () {
        Route::post('/login', [UsersController::class, 'login']);
        Route::post('/register', [UsersController::class, 'register']);
        Route::get('/logout', [UsersController::class, 'logout'])->middleware('auth:api');
    });
    
    1. 手动补全控制器全命名空间:Route::post('/register', 'App\Http\Controllers\UsersController@register');
  • 清除路由缓存
    执行以下命令清除已缓存的路由配置,再进行测试:
    php artisan route:clear
    
    也可以执行php artisan route:list查看已加载的路由列表,确认是否存在你声明的注册路由条目
  • 确认服务运行状态
    检查php artisan serve启动的服务端口是否为8000,无特殊配置的情况下不要直接访问public目录下的入口文件,避免路由重写规则失效。

内容的提问来源于stack exchange,提问作者Olana Kenea

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.09 09:00:02