Spring Boot GraphQL Tutorial #10 - DataFetcherResult - Returning data and errors
It is possible to return both data and multiple errors in a graphql resolver by returning a graphql.execution.DataFetcherResult either directly or wrapped in a CompletableFuture instance for asynchronous execution. (async graphql resolvers in next video).
This is a useful when your resolver may need to retrieve data from multiple sources or from another GraphQL resource.
For example, if a single resolver makes network connections to two different APIs. If one API returns successfully and the other does not, you may want to return the partially filled object and an error. If you throw an exception, then the full object will be null. If you return the object without an error, then this may mislead your clients. As the data may be temporarily unavailable, not null.
DataFetcherResult can also be used to pass extra context to lower resolvers without polluting your graphql schema domain objects. This also allows you to pass down new local context objects between parent and child fields. If you return a local context via setLocalContext(value) then it will be passed down into any child fields via the graphql.schema.DataFetchingEnvironment#getLocalContext().
Have a good one!
Cheers
Philip
Data Fetcher Result: https://github.com/graphql-java/graphql-java/blob/master/src/main/java/graphql/execution/DataFetcherResult.java
Data Fetching Execution: https://www.graphql-java.com/documentation/v11/execution/
Data Fetching: https://www.graphql-java.com/documentation/v11/data-fetching/
Spring Boot GraphQL: https://github.com/graphql-java-kickstart/graphql-spring-boot
Что делает видео по-настоящему запоминающимся? Наверное, та самая атмосфера, которая заставляет забыть о времени. Когда вы заходите на RUVIDEO, чтобы посмотреть онлайн «Spring Boot GraphQL Tutorial #10 - DataFetcherResult - Returning data and errors», вы рассчитываете на нечто большее, чем просто загрузку плеера. И мы это понимаем. Контент такого уровня заслуживает того, чтобы его смотрели в HD 1080, без дрожания картинки и бесконечного буферизации.
Честно говоря, Rutube сегодня — это кладезь уникальных находок, которые часто теряются в общем шуме. Мы же вытаскиваем на поверхность самое интересное. Будь то динамичный экшн, глубокий разбор темы от любимого автора или просто уютное видео для настроения — всё это доступно здесь бесплатно и без лишних формальностей. Никаких «заполните анкету, чтобы продолжить». Только вы, ваш экран и качественный поток.
Если вас зацепило это видео, не забудьте взглянуть на похожие материалы в блоке справа. Мы откалибровали наши алгоритмы так, чтобы они подбирали контент не просто «по тегам», а по настроению и смыслу. Ведь в конечном итоге, онлайн-кинотеатр — это не склад файлов, а место, где каждый вечер можно найти свою историю. Приятного вам отдыха на RUVIDEO!
Видео взято из открытых источников Rutube. Если вы правообладатель, обратитесь к первоисточнику.