gpt4 book ai didi

java - API 服务发现设计

转载 作者:太空宇宙 更新时间:2023-11-04 14:42:06 24 4
gpt4 key购买 nike

我正在开发一个相当大的 API(390 多个函数),并且我正在尝试汇总文档团队为项目创建文档所需的所有信息。

我决定使用 JSON Hyperschema 来表示这一点。

我创建了一个注释处理器来从我的代码中查找所有 javax.ws.rs.Path 注释并获取 Javadoc、http 方法(来自注释)和其他参数信息,但我遇到问题了。

超模式建议(并且我的项目规范要求)将通过 API 发送的对象作为模式包含在超模式中。通常我会使用 jackson 来完成这个任务。但是,由于我所在的注释处理器不在主 API 项目中,因此我无法使用类引用(例如 User.class ,其中 user 是我的 API 项目中的对象,而不是我的处理器中的对象) )而不产生错误。 (这已解释 here )。

我的问题是,解决此限制的最佳方法是什么?我想出了一种方法,如下所述,但我希望它可以插入到任何其他服务(相同格式)中以记录它们。

作为这个问题的解决方案,我曾想过在编译时和运行时破坏我的生成器。在编译时,我将生成带有占位符的 JSON 超模式来引用对象模式。它还会生成一个包含所有对象全名的资源文件。

在运行时,我计划为返回的对象生成架构,然后将它们的链接插入到 JSON 中。

恕我直言,这个解决方案看起来不太“优雅”。有谁知道其他方法可以实现这一目标吗?

最佳答案

我会推荐以下项目:-

jsonschema-hypermedia-support这证实了enter link description here

或使用 Spring HATEOAS另请参阅 this stackoveflow thread about Restful API

关于java - API 服务发现设计,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24832336/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com