WSO2 API MANAGER中的Swagger定义?

时间:2014-11-12 09:05:09

标签: wso2 wso2-am

我正在使用WSO2 API Manager 1.7.0。我使用API​​ Publisher设计了API并发布了它。招摇定义是自动生成的。但是,API设计中的所有资源都没有在swagger中定义。在10个资源中,只有4个资源规范在swagger定义中显示。所以我尝试了更新选项,swagger定义消失了,只显示 {" jQuery1620012463462042712203":4} ,我在解析Swagger定义时遇到 ERROR - UserAwareAPIConsumer错误控制台日志中的api_example 。所以问题是  为什么swagger定义没有正确生成(涵盖所有资源)以及如何解决这个问题?

1 个答案:

答案 0 :(得分:0)

在API Manager 1.7.0或更早版本中,我们仅在API创建时创建Swagger定义。因此,如果某人通过编辑API添加更多API资源,那么这些资源将不会反映在Swagger JSON中。原因是在那些API Manager版本中,我们没有提供从UI构建swagger json的完整支持(例如:添加参数)。所以应该根据要求手动更新。因此,如果我们每次更新API时都不断更新swagger json,那么这些手动更改将会丢失。结果,我们只创建了一次swagger json。

在这种情况下,内容消失的原因应该是语法问题。因此,我建议您使用所有资源创建一个新的API并保存。您可以找到所有这些的swagger定义。

API Manager 1.8.0将在不久的将来发布,此更新时间限制在那里得到修复。所有与swagger相关的内容都可以通过Publisher UI添加,Store Swagger UI也可以在每个API更新中获得所有更改。