快捷搜索: 王者荣耀 脱发

Knife4j文档请求异常:TypeError: n.forEach is not a function

错误信息

接入了Knife4j之后,直接访问应用的doc.html页面,直接提示报错:Knife4j文档请求异常。F12查看具体的报错信息,发现如下

app.23f8b31d.js:1 TypeError: n.forEach is not a function
    at Oe.analysisGroupSuccess (app.23f8b31d.js:1:173354)
    at app.23f8b31d.js:1:171658
    at app.23f8b31d.js:1:249418

如果使用网关访问该页面,没有见到报错信息,但是没有接口菜单列表:

解决

出现这种问题,可能有多种原因,这里,根据我的排查,原因可能是因为后端改变了和knife4j相关接口的返回格式,因为我的后端,增加了ResponseBodyAdvice接口,做了一个统一返回格式的封装。所以,这里我尝试只对某些自己开发的接口,做统一返回:

@Slf4j
@ConditionalOnWebApplication
@RestControllerAdvice(basePackages = {
          
   "com.fyk.wq"}, annotations = {
          
   RestController.class})
public class RestControllerAdviceConfig implements ResponseBodyAdvice<Object> {
          
   
	………
}

再次访问页面,问题解决:

经验分享 程序员 微信小程序 职场和发展