微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

如何在 Swagger API 文档中添加自定义验证

如何解决如何在 Swagger API 文档中添加自定义验证

我在 API 文档中加入了 swagger。但是我的服务有一堆自定义 api 数据验证,我想在 Swagger UI 中记录它们。这是服务实现和验证方法。我们可以自定义 swagger UI 来填充所有数据验证吗。

  // API Implementation 
  @PostMapping("/data/load")
    public ResponseEntity<GraphResponse> getDataLoad(@RequestBody DataRequest request) 
            throws ValidationException,ServiceException {
        validateRequest(request);
        DataResponse response = dataService.getData(request);
        return new ResponseEntity<>(response,HttpStatus.OK);
    }
 // Validation Method 
private void validateRequest(GraphRequest request) throws ValidationException  {
        List<String> validDataPoints = null;
        if (request == null) {
            throw new ValidationException(Error.EMPTY_REQUEST.getCode(),Error.EMPTY_REQUEST.getErrorMsg());
        }
        if (request.getDataPoints() == null || request.getDataPoints().isEmpty()) {
            throw new ValidationException(Error.EMPTY_DATAPOINTS.getCode(),Error.EMPTY_DATAPOINTS.getErrorMsg());
        }
        
        this.validatePeriod(request.getPeriod());
        this.validateType(request.getType());
        
        if(request.isCapacity()) {
            validDataPoints = graphDataPointsRefMap.get(request.getType()).get(AppConstants.CAPACITY);
        }else {
            validDataPoints = graphDataPointsRefMap.get(request.getType()).get(AppConstants.LOAD);
        }
        this.validateDataPoints(request.getDatapoints(),request.getPeriod(),validDataPoints);
    }

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。