Laravel无需专用API模板,标准安装后精简配置即可构建纯净API服务:删除views和web.php、配置Sanctum认证、用--api生成控制器、路由仅写api.php。

Laravel 不需要专门的“纯 API 项目模板”,标准安装后通过精简配置和结构就能变成真正干净、专注接口的 API 服务。关键不是选什么特殊命令,而是关掉 Web 层干扰、启用 API 专用机制。
创建最小化 Laravel 骨架
用 Composer 直接拉取 Laravel 10+ 官方骨架(它默认已优化 API 场景):
- composer create-project laravel/laravel api-backend --prefer-dist "10.*"
- 进入项目:cd api-backend
- 生成密钥:php artisan key:generate
这一步比 laravel new 更可控,避免默认带进来的 Web 路由和视图残留。
清理 Web 相关文件与逻辑
纯 API 项目不该有视图渲染、CSRF、Session 等 Web 中间件干扰:
- 删掉 resources/views 目录(完全不用)
- 删掉 routes/web.php(保留会引发路由冲突或意外跳转)
- 检查 app/Http/Kernel.php,确认
$middlewareGroups['web']不会被 API 路由调用——API 路由默认走api组,天然隔离
配置 API 认证与响应规范
用 Sanctum(官方推荐,轻量且够用)替代 Session 或 Passport:
- 安装:composer require laravel/sanctum
- 发布配置:php artisan vendor:publish --provider="Laravel\Sanctum\SanctumServiceProvider"
- 运行迁移:php artisan migrate(必须执行,否则 token 验证直接失败)
- 确认 config/auth.php 中
'api' => ['driver' => 'sanctum', 'provider' => 'users']
所有控制器方法返回 JSON,无需手动写 response()->json()——用 --api 选项生成控制器即可自动适配。
定义路由与生成控制器
只动 routes/api.php,不碰 web.php:
- 写资源路由示例:Route::apiResource('posts', \App\Http\Controllers\Api\PostController::class);
- 生成控制器(自动省略 view 相关代码):php artisan make:controller Api/PostController --api --model=Post
- 注意:API 路由自动加前缀
/api,访问地址是/api/posts,别在路由里重复写/api/posts
如需跨域支持(Vue/React 前端本地开发),再装 CORS 包并精确配置允许域名,生产环境切勿用 *。


















