免责声明:我对API开发几乎了解0。
目标不是编写API,而是移植现有定义。
我们当前的API设置是驻留在3个不同EC2实例中的WSO2群集API管理器。一种用于发布者和商店,一种用于网关,一种用于密钥管理器。
我已经花时间检查配置,所以我至少知道这三个组件是如何“对话”的。
到目前为止,我发现API定义位于路径“ * / gateway / repository / deployment / server / synapse-configs / default / api /”中,并且其中有XML定义了API。通读它,这些字段似乎与我在AWS API Gateway中看到的字段相同。因此,我知道必须有一种将它们移植过来的方法。
但是,除此之外,我对下一步是什么完全迷失了。我必须对API有多深的了解才能成功做到这一点?是否可以使用将API导入AWS API Gateway的工具?还是从WSO2导出?我有点卡住了,因为我现在可以看到的唯一可以帮助我学习WSO2和API定义的东西,但是我们没有足够的时间来处理给出的时间限制。
朝正确方向迈出的任何一步将不胜感激。谢谢!
编辑:我们正在考虑迁移的原因是维护一直是一场噩梦。每当我们必须进行一些定期清理时,我们就遇到了关于API的许多关键问题,更不用说3个EC2实例也使我们付出了代价,因此我们正在寻找更轻便,易于维护的选项
答案 0 :(得分:1)
如果仅需要迁移API定义,则可以尝试使用Swagger文件(即OpenAPI定义)[1]将API导入API Gateway。
您可以尝试从WSO2 API管理器中导出Swagger文件吗?如果是,则可以按照[1]中的说明在API网关中导入API。
关于API Manager的整体迁移(即API定义,端点定义,安全策略,缓存/限制策略等),我建议您进行适当的可行性研究,以确保您所使用的功能是否API管理器可以转换为API网关提供的功能。
[1] https://docs.aws.amazon.com/apigateway/latest/developerguide/import-export-api-endpoints.html