Как управлять изменениями в большом количестве запросов GraphQL - PullRequest
0 голосов
/ 03 марта 2020

Я исследую использование GraphQL (. net core) с клиентом Apollo для большого приложения со сложным API. Мы контролируем внешний и внутренний интерфейсы, поэтому, когда мы меняем API, нам необходимо внести соответствующие изменения во внешний интерфейс.

Apollo хорош тем, что дает нам строго типизированные модели представлений. и Intellisense при написании запросов в Visual Studio, и мы можем использовать инструмент CodeGen для создания моделей представления для нового запроса. Однако в быстро развивающемся проекте со многими разработчиками было бы легко изменить внутреннюю часть, чтобы привести к необнаруженному разрыву в запросе, поскольку запросы - это просто строки. Надеемся, что если тесты будут достаточно хорошими, эти разрывы в конечном итоге будут обнаружены, но было бы очень хорошо, если бы мы могли запустить процесс для проверки всех запросов в коде на предмет работающего API.

Более того, Спустя годы мы могли бы захотеть внести изменения в API и выяснить степень изменений, необходимых для внешнего интерфейса. Если у нас нет этой информации, разработчики могут написать защитный код, просто добавляя в API все больше и больше, а не меняя что-либо. внести необходимые изменения в API, не боясь что-то сломать.

...