Не возвращать модель, если она пуста - PullRequest
0 голосов
/ 19 апреля 2019

Я хочу вернуть ответ GraphQl в пользовательский интерфейс, где мне нужно включить или отключить определенную функцию на основе ответа.

Я получаю ответ в обоих случаях, т. Е. Если найдено значение, то отображается правильная строка и отправляется обратно ответ, но когда значение не найдено, значение null отправляется в качестве ответа от модели данных kotlin .

data class FinalObject(
     val isEnableDisable : String? = null
)

Класс Котлина для GraphQl

@GraphQLDescription("Random string")
data class ActualClassForGraphQl(
     val finalObject: FinalObject
)

Класс Котлина, где записана реальная логика

@Component
class ActualClassForLogic{
      fun isEnableDisable():FinalObject{
           if(true){
              return FinalObject("some string")
           }
           return FinalObject()
      }
}

Ожидаемый результат:

Ничего не нужно отправлять, т. Е. Сам ключ FinalObject не нужно заполнять в ответе, т. Е. Пустое тело ответа нужно отправлять в пользовательский интерфейс.

Фактический результат: Если он входит в блок «если», то есть сценарий успеха

FinalObject{
     isEnableDisable:"some string"
}

В случае, если он не входит в блок «если», т.е. сценарий сбоя

FinalObject{
     isEnableDisable:null
}

1 Ответ

0 голосов
/ 31 мая 2019

, если я не понял вашего вопроса, я думаю, что это не то, как спецификация GraphQL, а то, что клиенту нужно показывать в ответе, а что нет, если клиент отправляет это поле (finalObject?) В запросе, он больше ориентируется на стороне клиента, чем на стороне сервера. должен быть возвращен независимо от того, какое значение (ноль на ненулевом), и это то, что спецификация графика graphql дает пользователям.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...