【发布时间】:2020-02-16 06:27:20
【问题描述】:
尽管我在日常工作中一遍又一遍地构建和使用 REST API,但我并不是来自使用 OpenAPI 或类似工具的背景。在我目前的角色中,我们总是定义 OpenAPI 规范,这似乎是流程的一个假设部分。团队认为它非常重要。
但是,我终其一生都无法认识到它的任何好处。我正在尝试更好地理解。
在我知道它可以做的事情中,没有一个看起来是有益的,恕我直言,但我必须遗漏一些东西。
- OpenAPI 规范可以生成文档,但在我看来,文档是供人阅读的,应该由人编写。生成的文档可能包含所有内容,但不包含作为一个整体使用 API 的上下文和细微差别。
- OpenAPI 规范可以为单个 API 生成多种语言的客户端代码。通常,这些只是将 REST URL 结构映射到方法名称。这真的有帮助吗?这意味着我可能会使用
client.books.get(title="Moby Dick")而不是client.get("/books", {'title': 'Moby Dick'})。它所做的只是围绕相同的名称进行转换,而不是使任何事情变得更容易或更简洁。那么,再一次,有什么意义呢?生成的客户端似乎根本没有添加任何内容。
谁能赐教?
【问题讨论】: