专栏名称: GitHub好项目
GitHub上好项目分享;分享 GitHub 上知名的 Python、Java、Web、AI、数据分析等多个领域的优质学习资源、开源项目及开发者工具,为 GitHub 开发者提供优质编程资讯。
目录
相关文章推荐
阿枫科技  ·  我建了个免费无门槛的DeepSeek交流群 ·  昨天  
阿枫科技  ·  我建了个免费无门槛的DeepSeek交流群 ·  昨天  
河南日报  ·  董宇辉退出 ·  昨天  
河南日报  ·  董宇辉退出 ·  昨天  
caoz的梦呓  ·  最近没有文章发布 ·  2 天前  
掌中淄博  ·  就在明天!张店发布最新提醒 ·  4 天前  
掌中淄博  ·  就在明天!张店发布最新提醒 ·  4 天前  
51好读  ›  专栏  ›  GitHub好项目

一个开源 API 管理平台,有助于创建创新的 API 解决方案

GitHub好项目  · 公众号  · 科技自媒体  · 2024-06-09 06:30

正文

大家好,我是GitHub好项目君,每天分享GitHub上的好项目

我们每天分享开源项目,根据开源协议都可以赚钱

Fusio 是一个开源 API 管理平台,有助于创建创新的 API 解决方案。

源代码:

http://www.gitpp.com/yf/fusio-cn

Fusio是Postman的替代品, Postman是美国一家软件公司,已经完成数亿美金的融资。

行业背景

API 测试和开发工具的主要功能如下:

1. 模拟 HTTP 请求: API 测试和开发工具可以模拟各种 HTTP 请求,如 GET、POST、PUT、DELETE 等,以便于调用和测试 API。

2. 响应验证: API 测试和开发工具能够验证 API 响应的数据格式、状态码、头部信息等,以确保 API 响应符合预期。

3. 参数传递: API 测试和开发工具支持通过 URL 参数、请求体参数、表单数据等方式传递数据,以便于测试 API 参数的合理性和有效性。

4. 自动化测试: API 测试和开发工具可以编写自动化测试脚本,实现对 API 的自动化测试,提高测试效率。

5. 断点调试: API 测试和开发工具提供断点调试功能,便于开发人员定位和解决问题。

6. 监控和日志: API 测试和开发工具可以记录 API 请求的详细信息和响应数据,便于分析和排查问题。

7. 团队协作: API 测试和开发工具支持多人协作,可以共享测试结果和数据,提高团队协作效率。

8. 接口文档生成: API 测试和开发工具可以根据 API 请求和响应数据自动生成接口文档,方便团队成员理解和使用。

9. 跨平台和跨语言: API 测试和开发工具通常具有跨平台和跨语言的支持,可以在不同操作系统和编程语言环境下使用。

10. 扩展性: API 测试和开发工具通常具有丰富的插件和扩展,可以集成其他工具和框架,满足不同场景的需求。

Fusio 介绍

Fusio 是一个开源 API 管理平台,有助于创建创新的 API 解决方案。构建完整的 API 产品并非易事,因此创建了 Fusio,它在 API 生命周期的各个方面为您提供支持:

  • 构建
    Fusio 提供了多种构建新 API 端点的方法,它可以代理现有 API,直接使用外部数据库或文件,还可以实现自定义业务逻辑

  • 文档
    Fusio 包含一个模式存储,可用于描述每个端点的请求和响应负载。然后,这些模式用于生成 OpenAPI 规范或客户端 SDK。

  • 货币化
    Fusio 提供了一种通过使用 Stripe 等支付提供商将现有 API 货币化的简单方法。

  • Fusio入门
    提供了一个随时可用的开发人员门户,外部开发人员可以在其中注册以使用您的 API。

  • Integration
    Fusio 包含一个强大的 SDK 生成器,可以自动生成高质量且随时可用的代码,以便您的用户可以轻松使用您的 API。

  • 监控
    Fusio 提供了一个直观的后端,您可以在其中监控 API 的重要方面。

用例

Fusio 可以帮助您解决以下用例:

  • API-Product
    Fusio 可帮助您创建出色的 API 产品,除了构建 API 之外,它还提供开发人员门户,开发人员可以在其中注册以及通过 API 获利的方式

  • API-Gateway
    Fusio 可用作内部 API 和微服务的网关。它处理所有常见功能,如授权、速率限制和模式验证

  • SPA 后端
    Fusio 可以用作后端,使用流行的 Javascript 框架(例如 Angular、React 或 Vue)构建 SPA。它提供了一个强大的代码生成器,可以自动为您的API生成SDK

  • 低代码平台
    Fusio 允许您在无需编码知识的情况下构建 API 端点。即它提供了一个实体生成器,您可以使用它轻松创建完整的 CRUD API。

  • API 框架
    对于更复杂的用例,您还可以使用 Fusio 作为框架从头开始构建完整的 API。这意味着您可以构建自定义操作,在其中可以使用广泛的 PHP 生态系统来解决您的任务。

特征

以下功能列表为您提供了初步概述:

  • OpenAPI 生成
    Fusio 自动为定义的路由生成 OpenAPI 规范

  • SDK 生成
    Fusio 可以根据定义的架构自动为您的 API 生成客户端 SDK

  • 订阅支持
    Fusio 包含一个事件订阅层,有助于为您的 API 构建发布/订阅

  • 速率限制
    Fusio 提供了一种根据用户或应用程序对请求进行速率限制的方法

  • 授权
    Fusio使用OAuth2进行API授权

  • 货币化
    Fusio 提供了一个简单的支付系统来对特定路线进行收费

  • 验证
    Fusio 使用 TypeSchema 自动验证传入的请求数据

  • 分析
    Fusio 监控所有 API 活动并将其显示在仪表板上

  • 用户管理
    Fusio 提供了一个开发者应用程序,新用户可以通过 GitHub、Google、Facebook 或通过普通电子邮件注册登录或注册新帐户

应用

由于使用 API 很困难,因此只有应用程序 Fusio 提供了有助于使用 API 的应用程序。大多数应用程序都是简单的 JS 应用程序,它们与 Fusio 的内部 API 配合使用。 您可以在我们的市场 上查看所有可用应用程序的列表 。您可以通过 CLI 命令 ie php bin/fusio marketplace:install fusio 或通过后端应用程序安装此类应用程序。

所有应用程序都安装到该 apps/ 文件夹中。您需要 .env 通过定义 APP_APPS_URL 变量来告诉 Fusio 文件中 apps 文件夹的公共 url。根据您的设置,这可以是自定义子域(例如) https://apps.acme.com ,也可以只是子文件夹 https://acme.com/apps

生态系统

Fusio 是一个开源项目,您可以根据 Apache 2.0 许可证条款免费将其用于私人和商业项目。除了核心产品之外,还提供附加服务来增强 Fusio 的功能。

  • TypeAPI
    一种 OpenAPI 替代方案,用于描述用于类型安全代码生成的 REST API。

  • TypeSchema
    一种 JSON 格式,以语言中性格式描述数据模型。

  • TypeHub
    一个用于设计和构建 API 模型和客户端 SDK 的协作平台。

  • SDKgen
    SDKgen 是一个功能强大的代码生成器,可以自动为您的 REST API 构建客户端 SDK。

  • APIgen
    根据您的数据模型生成完全可用且可自定义的 API。

  • PSX
    一个创新的 PHP 框架,致力于构建完全类型化的 REST API。

安装

可以通过 Composer 或手动文件下载来安装 Fusio。

Composer

composer create-project fusio/fusio

配置

您可以按照以下步骤手动安装 Fusio,也可以使用基于浏览器的安装程序(位于 )







请到「今天看啥」查看全文