博客列表 >是时候使用 Lumen 7 + API Resource 开发项目了!

是时候使用 Lumen 7 + API Resource 开发项目了!

大苏
大苏原创
2020年06月14日 10:35:08738浏览

使用 Lumen 7 + Api Resource  进行 API 开发

写在前面

工作中使用 Laravel 开发 API 项目已经有些年头了,发现每次启动新的 Api 项目的时都会在 Laravel 基础上进行一些预处理,包括针对 API 项目的结构设计,统一响应结构的封装,异常的捕获处理以及授权模块的配置等。总是在做一些重复的工作,那索性将这些常用的基础封装做成一个「启动模板」好了。

项目地址戳这儿

更新内容

  • 实现了根据实际业务场景自定义响应码和多语言的响应描述,目录结构有参考 @mingzaily 同学的实现(2020-06-05)
  • 更好的支持 Api Resource:使用with()$additonal 附加额外数据,响应返回前使用withResponse()对响应进行处理(2020-06-04)
  • 补充响应成功时的使用示例(2020-06-03)
  • 规范 Reponse 中的 message 提示(2020-06-02)

为什么是 Lumen ?

现如今,中大型项目中通常使用前后端分离方式开发,前后端分别通过不同的代码仓库各自维护着项目代码,Laravel 只负责项目中的 API 部分,提供 API 给前端调用。这种场景下,使用 Laravel 进行开发 API 稍微显得有点“臃肿”了。

相比之下,Lumen 针对项目中的 API 开发场景,精简了Laravel 中的很多部分,更适合 API 开发。有了 Laravel 使用经验,切换到 Lumen 也较为容易。

概览

  • 适配 Laravel 7 中新增的 HttpClient 客户端
  • 使用 Laravel 原生的 Api Resource
  • 规范统一的响应结构
  • 使用 Jwt-auth 方式授权
  • 支持日志记录到 MongoDB
  • 合理有效地『Repository & Service』架构设计(
声明:本文内容转载自脚本之家,由网友自发贡献,版权归原作者所有,如您发现涉嫌抄袭侵权,请联系admin@php.cn 核实处理。
全部评论
文明上网理性发言,请遵守新闻评论服务协议