GraphQL Resolver
NestJS 🟡 MidDéfinition
Classe décorée @Resolver qui définit les opérations GraphQL (queries, mutations, subscriptions) en approche code-first avec des décorateurs TypeScript.
Analogie
Comme un serveur de restaurant avec un menu a la carte : le client choisit exactement ce qu'il veut recevoir.
Exemple de code
@Resolver(() => User)
export class UserResolver {
constructor(private userService: UserService) {}
@Query(() => [User])
users() { return this.userService.findAll(); }
@Mutation(() => User)
createUser(@Args('input') input: CreateUserInput) {
return this.userService.create(input);
}
}
Cas d'usage
Exposer une API GraphQL code-first avec typage automatique du schema depuis TypeScript.
Anti-pattern
Termes liés
En entretien
C'est quoi un GraphQL Resolver en approche code-first avec NestJS ?
C'est une classe décorée @Resolver qui définit les opérations GraphQL - queries, mutations, subscriptions - avec des décorateurs TypeScript, un peu comme un serveur de restaurant à la carte où le client choisit exactement ce qu'il veut recevoir. Le schema est typé automatiquement depuis le code TypeScript.
Où est-ce que tu mettrais la logique métier dans un resolver GraphQL ?
Jamais dans le resolver directement : je la délègue au service, l'anti-pattern décrit étant justement de mettre de la logique métier dans le resolver. Le resolver ne fait qu'orchestrer l'appel au service, comme users() qui appelle userService.findAll().
Fiche mise à jour le 2026-09-27