Я использую swagger-codegen-3.0.0.
Как показано ниже, спецификация API имеет ответы 200 и 400;однако, когда генерируется API-интерфейс addTeam (), он генерируется с типом возвращаемого значения 'void'.
Я хочу обработать код ответа 200 и / или 400. Это означает, что у меня есть явное определениетип полезной нагрузки в спецификации ответа?Может кто-нибудь предоставить более подробную информацию о том, как должна быть указана моя спецификация «ответов»?
49 /team:
50 post:
51 summary: Add team
52 operationId: addTeam
53 requestBody:
54 description: Team detail being added
55 content:
56 application/json:
57 schema:
58 type: array
59 items:
60 $ref: "#/components/schemas/addTeamPayload"
61 responses:
62 200:
63 description: Ok
64 400:
65 description: Bad request
66 tags:
67 - Team
java -jar swagger-codegen-cli-3.0.0.jar generate -i teamApiSpec.yaml -l java -дополнительные свойства jackson = true --artifact-id swagger-java-client-api
Эта команда генерирует приведенный ниже Java-код / API.
/**
* Add team
*
* @param body Team detail being added (optional)
* @throws ApiException If fail to call the API, e.g. server error or cannot deserialize the response body
*/
public void addTeam(List<AddTeamPayload> body) throws ApiException {
addTeamWithHttpInfo(body);
}
/**
* Add Team
*
* @param body Team detail being added (optional)
* @return ApiResponse<Void>
* @throws ApiException If fail to call the API, e.g. server error or cannot deserialize the response body
*/
public ApiResponse<Void> addTeamWithHttpInfo(List<AddTeamPayload> body) throws ApiException {
com.squareup.okhttp.Call call = addTeamValidateBeforeCall(body, null, null);
return apiClient.execute(call);
}
Еще одна проблема, несмотря на ответ 400код запрограммирован в спецификации API, когда сервер возвращает 400, API все еще генерирует исключение, и в процессе детали кода возврата теряются.Как пользователь API, я не знаю, какой код возврата возвращается или какое ответное сообщение возвращается сервером.
Может кто-нибудь прокомментировать это?Это важно.Дайте мне знать, если я что-то пропустил в спецификации API.