172 похожих чатов

Привет всем. Кто подскажет, как быть? Структура json содержит динамическое

поле, которое есть json. Вложеный JSON меняет поля динамически на api. Как его парсит через Encodable? Если нельзя явно понять тип поля и вообще их количество?

8 ответов

4 просмотра

Реализуешь протокол decodable вручную. Можно присылать например тип этого поля с бека, чтобы не тратить ресурсы на перебор типа данных.

Ivan-Rusin Автор вопроса
Anton Cherkasov
Реализуешь протокол decodable вручную. Можно присы...

Те единственным оптимальным решением на сторон клиента остается метод, который перебирает типы примитивные и каким-то чудным алгоритмом подбирает имена для полей в соответствии с необходимостью задачи?

Ivan Rusin
Те единственным оптимальным решением на сторон кли...

А кол - во инвариантов этого JSON какое - то конечное?

Ivan-Rusin Автор вопроса
Anton Cherkasov
А кол - во инвариантов этого JSON какое - то конеч...

Нет, поля добавляются по условиям на апи, например, зависит от прав пользователей.

Ivan Rusin
Нет, поля добавляются по условиям на апи, например...

Так прав же не бесконечное множество. Там точно нельзя описать все что может прийти?

Ivan-Rusin Автор вопроса
Evgenii <JonFir> Elchev
Так прав же не бесконечное множество. Там точно не...

Ого, Жень, не ожидал тут увидеть) Там полей порядка 30 штук. Можно, но не лучший вариант. Думал есть более лаконичное решение.

Это как раз лучший вариант)

Ivan-Rusin Автор вопроса
Evgenii <JonFir> Elchev
Это как раз лучший вариант)

Нужно провести исследование и выяснить на практике. Но конструкция будет большая...

Похожие вопросы

Обсуждают сегодня

Какой-то там пердун в 90-х решил, что есть какая-то разная типизация. Кого вообще это волнует?
КТ315
49
void terminal_scroll() { memmove(terminal_buffer, terminal_buffer + VGA_WIDTH, buffer_size - VGA_WIDTH); memset(terminal_buffer + buffer_size - VGA_WIDTH, 0, VGA_WIDTH); ...
Егор
47
Всем привет! Подскажите, пожалуйста, в чем ошибка? Настраиваю подключение к MySQL. Либы лежат рядом с exe. Все как по "учебнику"
Евгений
16
А можете как-то проверить меня по знаниям по ассемблеру?
A A
132
Здравствуйте! У меня появилась возможность купить книгу "Изучай Haskell во имя добра!". Но я где-то слышал, что эта книга устарела. Насколько это правда??
E
22
Здравствуйте! Я вот на stepic решаю задачи на хаскеле https://stepik.org/lesson/8443/step/8?unit=1578 мой код import Data.List (isInfixOf) removing :: String -> [String] ->...
E
10
Камрады, кто тесно работал с vtv, хотел уточнить. Ширина column задаётся жёстко на этапе создания дерева или можно в рантайме ее менять программно (не мышкой)?
Ed Doc
10
да ладно ... что там неочевидного ? глянуть в исх-ки датасета и/или кверика чтобы понять в каком месте и как выполняется обращения к св-вам blablaSQL - минутное дело, даже е...
Сергей
7
Здесь для arm кто-нибудь кодит ?
Nothing
52
Всем привет, у меня есть сервер принимающий входящие HTTP подключения, как проверить, что подключение было через прокси или нет, есть какие то поля в заголовках по которым мо...
Кибер Бомж
8
Карта сайта