API Platform:PHP 写 API 的全栈方案

API Platform 是一个面向 API 优先开发的 PHP 框架,GitHub 上有 9,150 个 Star。

正文顶部截图

做什么的

用 PHP 类定义好数据模型,API Platform 自动生成一套 REST 或 GraphQL 接口。分页、数据校验、权限控制、关联资源嵌套,这些 API 开发中反复要写的东西,框架全部内置处理。

它还支持多种内容格式协商,GraphQL、JSON-LD、HAL、JSON:API、YAML、XML、CSV 都开箱可用。生成的 API 文档基于 OpenAPI 规范,浏览器直接打开就能查看接口说明。

README区域截图

技术栈

服务端基于 Symfony 框架,前端提供 React 和 Vue.js 两套方案。PHP 开发者可以复用 Symfony 生态里的各种 Bundle 和 Doctrine ORM。前端团队用 React 组件库构建管理后台和客户端。

框架默认生成基于 Material Design 的管理界面,React 实现,不需要额外写代码。通过客户端生成器可以一键生成 Next.js、Nuxt.js 或 React Native 的前端项目脚手架。

部署和认证

官方提供 Docker 和 Kubernetes 的部署方案,从开发环境搭建到生产部署都有配套文档。OAuth 认证直接接入,项目自带 API 测试工具,写完接口就能验证。

Linked Data

API Platform 默认暴露结构化数据,遵循 Linked Data 标准。构建出的 API 天然兼容语义网技术,搜索引擎也能更好地理解内容,对 SEO 有帮助。

安装

推荐下载静态二进制文件,从项目 Releases 页面获取对应平台的版本,放到系统 PATH 目录下即可使用。

已有 PHP 和 Composer 的环境,也可以直接安装:

composer global require api-platform/installer

装好后用一条命令创建新项目:

api-platform my-app --framework=symfony --with-docker --with-pwa

也可以选 Laravel 框架:

api-platform my-app --framework=laravel

如果已有 Symfony 或 Laravel 项目,API Platform 可以作为组件集成进去,不需要从零开始。

mfony 或 Laravel 项目,API Platform 可以作为组件集成进去,不需要从零开始。

Logo

脑启社区是一个专注类脑智能领域的开发者社区。欢迎加入社区,共建类脑智能生态。社区为开发者提供了丰富的开源类脑工具软件、类脑算法模型及数据集、类脑知识库、类脑技术培训课程以及类脑应用案例等资源。

更多推荐