swagger-ui自定义解析

在实际的项目过程中,会自定义一个AbstractHttpMessageConverter作为包装去统一处理返回结果:

{
    "success":true,
    "content":{
        ........
    }
}

所以在处理的过程中,属于swagger的api的json也会被包装到这个自定义结果中,导致swagger去解析这个json的时候解析失败。

所以需要修改swagger-ui的代码,以便去处理自定义的数据格式。

  1. 将github上的swagger-ui的项目clone下来
  2. 打开 src/core/plugins/spec/action.js
  3. 修改resolveSpec这个方法

export const resolveSpec = (json, url) => ({specActions, specSelectors, errActions, fn: { fetch, resolve, AST }, getConfigs}) => {
  const { modelPropertyMacro, parameterMacro } = getConfigs()
  console.log("json++++++++",json.content)
  // 将解析完之后的json内容赋值给json变量
  json = json.content;

你可能感兴趣的:(swagger-ui自定义解析)