使用 Laravel API 的最佳实践

Posted

技术标签:

【中文标题】使用 Laravel API 的最佳实践【英文标题】:Best practice in using the Laravel API 【发布时间】:2018-10-03 04:40:10 【问题描述】:

我对 Laravel API 的使用有疑问。

我有一个简单的应用程序,登录用户可以使用 VueJS 和 Laravel API 发布消息。

最好的做法是什么?

    使用带有标准控制器的 web.php 路由器,例如:

    Route::get('/posts', 'PostController@index')->middleware('auth');

    我在每个 VueJS 请求中插入用户令牌的 api.php 路由器,例如。

    Route::get('/posts', 'PostController@index')->middleware('auth:api');

在我看来,使用api.php路由器只是对外使用(如果另一个应用程序想使用我的应用程序)的一个很好的解决方案。

对吗?

【问题讨论】:

【参考方案1】:

是的,api.php 路由旨在用于未构建在 laravel 实例所在的同一文件夹中的任何其他前端(即使使用 api.php 也没有任何问题)

因此,如果您使用的是在 resources/views/ 中构建的视图或作为同一应用程序中的 vue 组件,则使用 web.php 作为路由,对于“外部前端”使用 api.php。

【讨论】:

【参考方案2】:

没错。根据我的经验,api.php 确实是 Laravel 中编写 api 端点以供外部应用程序(如 android 应用程序)使用,甚至用于使用外部 js 框架(如 jquery、vue 等)在同一 Laravel 应用程序内进行 AJAX 调用的最佳位置。

【讨论】:

以上是关于使用 Laravel API 的最佳实践的主要内容,如果未能解决你的问题,请参考以下文章

Laravel 后端、Vue 前端、api 最佳实践?

Laravel 异步请求的最佳实践

在rest api app中生成laravel请求验证的最佳实践

RESTful API 错误最佳实践

在 Lumen/Laravel 控制器中添加自定义逻辑的最佳实践

Vue:处理多个 API 调用的最佳实践