32

我正在使用Springfox库为 REST 服务生成文档并将其显示在 Swagger UI 中。我按照Springfox 文档中的说明进行操作。

我有一个控制器,它使用查询字符串中的参数,方法映射如下:

@ApiOperation(value = "")
@RequestMapping(method = GET, value = "/customcollection/{id}/data")
public Iterable<CustomeType> getData(@ApiParam(value = "The identifier of the time series.") 
    @PathVariable String id,
    @ApiParam(name = "startDate", value = "start date", defaultValue = "")
    @RequestParam("startDate") String startDate,
    @ApiParam(name = "endDate", value = "end date", defaultValue = "")
    @RequestParam("endDate") String endDate)

然后在 swagger-ui 中生成的映射器显示为:

GET /customcollection/{id}/data{?startDate,endDate}

参数在 UI 中正确显示:在此处输入图像描述

但是当我点击 Try it Out 时,请求的 URL 格式错误:

http://localhost:8080/customcollection/1/data {?startDate,endDate}?startDate=1&endDate=2

如何修复?

4

1 回答 1

36

这是由线路引起的

 enableUrlTemplating(true)

Docket我从示例中复制并忘记删除的配置中。

删除此行后,一切都按预期工作。

于 2015-10-28T15:07:07.317 回答