fxmonster/laravel-json-api

Laravel应用程序的JSON API (jsonapi.org) 支持。

v3.2.0 2020-11-26 11:02 UTC

README

Build Status

cloudcreativity/laravel-json-api

在Laravel中构建功能丰富且符合标准的API。

此包提供添加符合JSON API规范的API到您应用程序所需的所有功能。包括对规范的广泛支持,例如:

  • 获取资源
  • 获取关系
  • 包含相关资源(复合文档)
  • 稀疏字段集。
  • 排序。
  • 分页。
  • 过滤
  • 创建资源。
  • 更新资源。
  • 更新关系。
  • 删除资源。
  • 验证
    • JSON API文档;以及
    • 查询参数。

以下附加功能也得到支持

  • 对Eloquent资源提供全面支持,具有以下功能:
    • 包含相关资源时自动懒加载。
    • 简单的关联端点。
    • 软删除和恢复Eloquent资源。
    • 基于页面和光标分页。
  • 异步处理。
  • 在您的API中支持多种媒体类型。
  • 生成您需要添加资源到API的所有类的生成器。

什么是JSON API?

来自jsonapi.org

如果您曾与团队就JSON响应的格式进行过争论,JSON API就是您的反自行车道武器。

通过遵循共享约定,您可以提高生产力,利用通用工具,并专注于重要的事情:您的应用程序。围绕JSON API构建的客户端能够利用其高效缓存响应的功能,有时甚至可以完全消除网络请求。

有关规范的完整信息和示例,请参阅https://jsonapi.fullstack.org.cn

教程和文档

需要教程来入门吗?请阅读如何JSON:API Laravel教程。

完整包文档可在Read the Docs上找到。

演示

演示应用程序可在此处找到。

Laravel版本

在升级到主要或预发布版本时,请务必查阅升级指南

Lumen

目前我们尚未将包与Lumen集成。我们没有使用Lumen的任何活跃项目,所以如果您使用Lumen并且可以帮助,请在此问题上告诉我们。

许可证

Apache许可证(版本2.0)。有关更多信息,请参阅许可证文件

安装

安装通过composer进行。请参阅文档以获取完整说明。

贡献

欢迎贡献。理想情况下,提交一个拉取请求,更理想的是带有单元测试的拉取请求。请注意以下几点

  • 错误修复 - 对master分支提交拉取请求。
  • 增强/新功能 - 对develop分支提交拉取请求。

我们建议在准备提交拉取请求之前,先提交一个问题。