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

Laravel加载URL中JSON文件时出现'Target class不存在'错误求助

解决Laravel "Target class [App\Http\Controllers\SiteController] does not exist" 错误

以下是排查和解决问题的关键步骤:

  • 检查目录与文件名大小写
    Laravel遵循PSR-4自动加载规范,路径大小写严格敏感:

    • 确认控制器所在目录为app/Http/Controllers(注意Http首字母大写,而非小写http)
    • 控制器文件名必须是SiteController.php(首字母大写,与类名完全一致)
  • 刷新Composer自动加载缓存
    执行命令更新自动加载映射,让Composer识别新创建的控制器:

    composer dump-autoload
    
  • 验证控制器类与命名空间
    确认控制器文件中的命名空间和类名完全匹配:

    namespace App\Http\Controllers; // 命名空间必须正确
    class SiteController extends Controller { ... } // 类名需与文件名一致
    
  • 检查路由引用
    你的路由写法在Laravel 8+版本中是正确的,需确保use App\Http\Controllers\SiteController;语句无拼写错误,路由定义无误:

    Route::get('/data', [SiteController::class, 'index']);
    

若以上操作后问题仍存在,可尝试清除Laravel缓存:

php artisan config:clear
php artisan route:clear

内容的提问来源于stack exchange,提问作者Nicole Jaffke

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.14 08:40:37