Как ввести значение через промежуточное программное обеспечение в тело запроса graphql (prisma-typegraphql)?

#graphql #prisma #prisma-graphql #typegraphql

Вопрос:

В настоящее время я использую prisma-typegraphql для создания схемы и ее реквизитов.

Проблема: Есть ли способ написать промежуточное программное обеспечение, которое получает доступ к значению из произвольного источника, а затем вводит его в аргументы запроса graphql? Он должен быть передан распознавателю таким образом, чтобы создавалось впечатление, что данные были в запросе с самого начала, и никаких изменений в распознавателе не требуется.

Дополнительная информация Допустим, у меня есть три модели: одна Клиентская, одна проектная и одна пользовательская. Проект связан с клиентом через свой идентификатор, идентифицирующий клиента, которому принадлежит проект, то же самое для пользователя

 model Client{  id  name  etc... }  model User{  id  name  clientId / client  etc... }   model Project{  id  title  clientId / client  etc... }  

Мне не нужен идентификатор клиента из интерфейса через запрос, вместо этого я намерен проверить пользователя, отправляющего запрос, а затем получить идентификатор клиента от этого пользователя. В настоящее время мое промежуточное программное обеспечение аутентификации проверяет пользователя, а затем передает объект пользователя в контексте. Однако из-за сгенерированного характера распознавателей typegraphql-prisma я не могу использовать контекст для ввода данных в распознаватель, не расширяя каждый распознаватель.

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