Swagger добавляет дополнительный параметр body для метода get

Я использую оболочку swagger akka-http, в настоящее время для моего запроса get swagger добавляет дополнительный параметр body в спецификацию swagger типа string

@Path("/{id}/status")
  @ApiOperation(httpMethod = "GET", response = classOf[JobStatus], value = "Returns Job status")
  @ApiImplicitParams(Array(
      new ApiImplicitParam(name = "id", required = true, dataType = "integer", paramType = "path", value = "Job id for which status be fetched")))
  @ApiResponses(Array(
      new ApiResponse(code = 200, message = "OK", response = classOf[JobStatus]),
      new ApiResponse(code = 404, message = "Job not found")))
def getStatus(id: String): Route =
get {
....

Мне интересно, это из-за метода getStatus, принимающего параметр "id", есть ли у кого-нибудь предложения

1 ответ

Решение

Сгенерированные документы основаны как на параметрах функции, так и на неявных параметрах (т. Е. Объединении двух наборов параметров). Я бы предложил, чтобы вы удалили аннотацию ApiImplicitParam и добавили аннотацию ApiModelProperty в поле id в списке параметров функции, если вам нужно переопределить объявленный тип String.

Пример использования аннотации ApiModelProperty: https://github.com/pjfanning/swagger-akka-http-sample/blob/master/src/main/scala/com/example/akka/addoption/AddOptionActor.scala

Другие вопросы по тегам