Apollo-client-maven-plugin: как сгладить фрагменты в сгенерированных моделяхJAVA

Программисты JAVA общаются здесь
Ответить
Anonymous
 Apollo-client-maven-plugin: как сгладить фрагменты в сгенерированных моделях

Сообщение Anonymous »

Я использую плагин apollo-client-maven-plugin версии 7.1.0 и пытаюсь сгладить фрагменты в своих моделях ответов, но сталкиваюсь с проблемой, когда фрагменты заключаются во вложенный объект.
Вот запрос GraphQL, который я использую:

Код: Выделить всё

fragment AuthenticationFragment on SessionInfo {
role
sessionGUID
token
}

mutation loginAsGuest {
login(
lang: { key: "FRA" }
) {
...AuthenticationFragment
}
}
Ожидаемый ответ (от клиента GraphQL, такого как Postman):

Код: Выделить всё

{
"data": {
"login": {
"role": "XXX",
"sessionGUID": "XXX",
"token": "XXXX"
}
}
}
Однако при использовании Java-клиента Apollo ответ выглядит следующим образом:

Код: Выделить всё

{
"login": {
"__typename": "SessionInfo",
"authenticationFragment": {
"role": {
"rawValue": "XXX"
},
"sessionGUID": "XXX",
"token": "XXX"
}
}
}
Как вы можете видеть, поля AuthenticationFragment вложены внутри объекта аутентификации.
Как удалить оболочку аутентификации Fragment и напрямую сгладить поля (роль, sessionGUID, токен) в объект входа?
Я попробовал включить опцию FlattenModels в конфигурации моего плагина, но это не сработало должным образом.Будем благодарны за любую помощь!

Подробнее здесь: https://stackoverflow.com/questions/792 ... ted-models
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «JAVA»