Unable to render this definition
The provided definition does not specify a valid version field.
Please indicate a valid Swagger or OpenAPI version field. Supported version fields are swagger: "2.0" and those that match openapi: 3.0.n (for example, openapi: 3.0.0).
Swagger报错,除了常规的几种原因外:
1、api中的Controller/Action 请加入[HttpPost]或者 [HTTPGet]
2、api中的Controller中有私有方法(全部写道Service)
3、传入参数模型有问题
4、api中的Controller/Action中函数名称有重复。
还有一种情况:可能是认证的拦截器interceptor\shiro\spring security等等拦截了swagger的相关链接。这种时候需要把相关链接放开验证,如下shiro拦截放开部分链接配置:
Map<String, String> filterMap = new LinkedHashMap<>();
filterMap.put("/webjars/**", "anon");
filterMap.put("/druid/**", "anon");
filterMap.put("/sys/login", "anon");
filterMap.put("/captcha.jpg", "anon");
filterMap.put("/swagger-ui/**", "anon");
filterMap.put("/v2/api-docs", "anon");
filterMap.put("/v3/api-docs", "anon");
filterMap.put("/swagger-resources/**", "anon");
filterMap.put("/**", "oauth2");
shiroFilter.setFilterChainDefinitionMap(filterMap);