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

Есть ли вообще смысл отслеживать входящие данные от АПИ? Просто щас

на проекте бек постоянно дорабатывается и вот проблема, что надо эти изменения надо отслеживать

А тайпскрипт в рантайме к сожалению не работает

вот тут вот еще есть одна идея как это отслеживать...

есть такая библиотека yup. Она умеет автоматом выводить типы ТС по схеме валидации.

Ну вот идея в том, что бы ответы от АПИ описывать схемой на yup, автоматом выводить из нее тип и использовать этот тип далее в проекте

и если я сталкиваюсь с ситуацией, что ответ от апи не совпадает с описаной схемой на yup

то я получаю ошибку валидации от yup, но при этом мне не приходиться делать дублирующую работу по описанию этих данных второй раз на тайпскрипте.

Вот тоже думаю насколько пахнет кастылями такая идея?

на проекте есть свагер, и да я могу прикрутить кодогенерацию, но как я понял из-за того что не факт что свагер будет корректно описан это даст решение проблемы.

Ну в целом интересен опыт подомного рода...

26 ответов

12 просмотров

Сделать из яп схемы тип нельзя чтоль? Как в зоде

Как это сваггер не корректно описан? Обычно на бекенде генерят сваггер основываясь на валидаторах

есть рантайм контракты

Rain- Автор вопроса

валидаторы работают на вход, а не на выход или нет?

runtypes, zod

Rain- Автор вопроса
Raman
runtypes, zod

я немного не про это я в целом, насколько такое вообще делают и не будет ли здесь каких нибудь подводных камней

Rain- Автор вопроса
Raman
Про это, делают когда не верят бэку

))))))) Ну я вот не то, что бы ему не доверяю ))))) ПРосто есть некторые сомнения ))))

Rain- Автор вопроса
Ilya Agarkov
так делают

И насколько это распространенная практика ?

Ilya Agarkov
у меня нет статистики)

Да и как-то сложно её будет подобрать

Rain
И насколько это распространенная практика ?

Вы или парсите или делаете as и надеваете крестик

Rain
))))))) Ну я вот не то, что бы ему не доверяю )))...

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

Встречалась ситуация, когда в апи менялись поля и после вопросов в чате, о, а вот вам новая апидок

Rain- Автор вопроса
Rain
Чет вы меня прям напугали ))

Нормально так делать, если есть опасения. Можно взять тот же zod, описывать ДТО схемы входящих данных и тут же делать из них TS типы для использования в проекте.

Yaroslav 🥷
Нормально так делать, если есть опасения. Можно вз...

+ можно прикрутить авто проверку схем сразу в запросах, как-то так делали, удобно

Rain- Автор вопроса
саша2007
Как это сваггер не корректно описан? Обычно на бек...

А вот это очень интересный вопрос есть мнение, что бэкендер делает там правки вручную бэк на джанго и хотя у меня исходный код есть, я вот не могу сказать, что там от руки, а что нет, так как не знаю ни питон ни джанго ))

Rain- Автор вопроса

ну как я понял мы с ним оба стажеры, так что на шило не надо )) тем более человек вроде хороший )) Но вот мне уже много кто говорил, что из-за того, что на беке как -то это вручную делается могут быть проблемы сам я бек чуть-чуть знаю, но вот свагер я на нем не поднимал, поэтому как он там конфигурируется я ХЗ ))

Rain
ну как я понял мы с ним оба стажеры, так что на ши...

Подойди скажи ему что он дурак дураком раз вручную сваггер пишет От такого мало смысла это уже не совсем контракт))

Rain- Автор вопроса
саша2007
Подойди скажи ему что он дурак дураком раз вручную...

Ну вообще это идея конечно. надо спросить у него, как он там это все хозяйство ведет ))

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

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

Anyone here suffers from unexplained aural migraines, who would be up for talking for a bit? Doesn't *have* to be aural, but I am not asking about headaches, I mean actual mi...
Martin Rys
55
Вопрос. Теоретический. Есть список команд. Команды отправляю в обработку некой функции, по очереди. Разные команды могут давать разные результаты после обработки. В зависимос...
Serjone
7
Всем вечера. Подскажите как лучше сделать. делаю на Д10 Например будет база данных на SQLite. в ней будет много таблиц. более 50шт Типа справочник. Содержать ID Name Id p...
Андрей Т 🐎
10
Я короче решил скомпилировать Nim в js, я думал он сработает как обычный транслятор. По итогу он мне создал файл с расширением js, и туда поместил кучу кода Вопрос, что это з...
𝕾𝖍𝖆𝖉𝖊 <suspense>
8
Добрый день! Хочу спросить совета. Хочется в скрипт добавить некую конструкцию, что скрипт создал файл, который нужно потом скопировать в определенное место. Нашел такой сп...
Mikhail
4
подскажите пожалуйста, как мне освободить результат записанный в переменную result? в чем проблема подскажите если МОЖЕТЕ?
Михаил Helper
28
Вопрос по WIN32: Насколько я понимаю то все функции win32 привязаны к объектам операционной системы. Например консоль, файл, кисть, окна итд. Следовательно функции win32 упра...
Tommy Vercetti
6
я не магистр хаскеля, но разве не может лейзи тип конвертнуться в не-лейзи запросив вычисление содержимого прям при инициализации?
deadgnom32 λ madao
100
in telegram can i have multiple username? so instead of having multiple account for example one for work, one for friend and one for family with three diff numbers. using one ...
Mr Thieves
6
кто-то пользуется компонентами rx ? как их лучше ставить, через OPM? (lazarus)
Iluha Companets
15
Карта сайта