是否有一种方法可以从io.swagger.models.Swagger中获取swagger ui html?

问题描述 投票:1回答:1

确定,我有许多io.swagger.models.Swagger对象,我将它们合并为一个新的超级Swagger。现在我想要超级HTML。我怎么能得到这个?注意,为了获得每个Swagger定义,我使用了新的SwaggerParser()。read(“ pathToSwagger”)。因此,这是从Swagger源获取Swagger对象的示例,现在我需要相反的操作,即从io.swagger.models.Swagger对象生成Swagger源。你能帮忙吗?

java merge swagger swagger-ui springfox
1个回答
0
投票

您可以尝试以下代码。从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

© www.soinside.com 2019 - 2024. All rights reserved.