有没有办法从io.swager.models.swagger获得swagger-ui-html



好的,我有很多io.swagger.models.swagger对象,我已经将它们合并到一个新的超级swagger中。现在我想要超级html。我怎么能拿到这个?注意,为了获得我的每个Swagger定义,我使用了新的SwaggerParser((.read("pathToSwagger"(。所以,这是从Swagger源代码中获得Swagger对象的一个例子,现在我需要相反的方法,即从io.Swagger.models.Swagger对象中生成Swagger。你能帮忙吗?

您可以尝试以下代码。从JSONObject,您将获得Swagger json,它可以在HTML中进一步使用。

public JSONObject getSwaggerJson(Swagger swagger) throws ServiceApiException {
try {
// Re-parse as JsonObject to ensure ordering of definitions and paths.
// TODO: make this optional (see limberest.yaml comments in limberest-demo)
JsonObject swaggerJson = new JsonObject(Json.mapper().writeValueAsString(swagger));
if (swaggerJson.has("definitions"))
swaggerJson.put("definitions", new JsonObject(swaggerJson.getJSONObject("definitions").toString()));
if (swaggerJson.has("paths"))
swaggerJson.put("paths", new JsonObject(swaggerJson.getJSONObject("paths").toString()));
return swaggerJson;
}
catch (JsonProcessingException ex) {
throw new ServiceApiException(ex.getMessage(), ex);
}
}

来源:https://www.programcreek.com/java-api-examples/?api=io.swagger.models.Swagger

我知道一个感兴趣的开源项目j2html。在那里,html文档的形成是以一种有趣的方式执行的。也许它可以帮助您从超级swagger对象创建一个html。

最新更新