Я ввожу необязательный «параметр запроса» ( со значением по умолчанию ) для одной из моих конечных точек API (то есть / foo2), но надеюсь, что существующие потребители API неЯ должен был внести какие-либо изменения в свое приложение, когда они восстанавливают заглушку клиента Java из нового файла swagger.
Я ожидал, что сгенерированный клиент Java предложит перегруженные методы для работы с параметром метода и без него, поэтомучто мои существующие пользователи API могут работать без каких-либо изменений в своем вызове.В то же время они могут перейти на более общее предложение.
public void foo2Get() throws ApiException {
public void foo2Get(String type) throws ApiException {
Но оно генерирует ТОЛЬКО последнее .Я не вижу первого.
В то же время сгенерированный клиент Python из того же самого чванства генерирует var arg, и таким образом он становится более гибким и, следовательно, старые и новые предложения будут работать без проблем.
def foo2_get(self, **kwargs):
(использованный образец чванства: прилагается)
** Описание ** Есть ли способ преодолеть это ограничение с помощью генератора кода Java.
версия генератора чванства
swagger 2.0
Содержимое файла декларации Swagger или URL
swagger: '2.0'
info:
title: identity
version: Unknown
consumes:
- application/json
produces:
- application/json
parameters:
typeParam:
name: type
in: query
required: false
allowEmptyValue: true
default: basic
type: string
enum:
- basic
- advanced
paths:
/foo2:
get:
consumes:
- application/json
parameters:
- "$ref": "#/parameters/typeParam"
responses:
'200':
description: OK