# 3.6 接口排序

WARNING

增强功能需要通过配置yml配置文件开启增强,自2.0.6开始

knife4j:
  enable: true

针对Controller下的具体接口,排序规则是使用Knife4j提供的增强注解@ApiOperationSupport中的order字段,代码示例如下:

@ApiOperationSupport(order = 33)
@ApiOperation(value = "忽略参数值-Form类型")
@PostMapping("/ex")
public Rest<LongUser> findAll(LongUser longUser) {
    Rest<LongUser> r=new Rest<>();
    r.setData(longUser);
    return r;
}

Knife4j通过Spring Plugin插件体系,对每个接口进行扫描,最终将扫描的@ApiOperationSupport注解获取的order值通过OpenAPI的扩展属性规范进行赋值

最终在OpenAPI的规范中,接口的path节点下,通过x-order属性得到接口的排序,最终前端根据排序值进行排序(顺序),如下图:

开发者如果遇到排序不生效的问题,可以通过检查接口返回的OpenAPI规范中,接口path节点下是否包含x-order的扩展属性

被围观 人次
上次更新: 2020-11-6 20:53:35
有任何问题请使用Knife4j的标签在OSC社区