web-dev-qa-db-fra.com

Comment créer des itinéraires imbriqués avec des paramètres à l'aide de NestJS

J'ai besoin de construire une API où la plupart des routes sont préfixées avec une partie URL commune qui a également un paramètre.

Dans mon cas spécifique, mes itinéraires doivent ressembler à:

/accounts/:account/resource1/:someParam

/accounts/:account/resource2/:someParam/whatever

/accounts/:account/resource3/

/accounts/:account/resource4/subResource/

etc..

Donc, idéalement, je créerais un parent route /accounts/:account/ qui contiendra les routes enfants (resource1, resource2, resource3, resource4, etc...).

J'ai aussi besoin du :account paramètre accessible depuis toutes les routes enfants.

Quelle est la meilleure façon d'y parvenir avec NestJS?

6
Francesco Borzi

Contrôleur parent:

@Controller('accounts')
export class AccountsController {
  // http://api.domaine.com/accounts
  @Get()

Contrôleur enfant:

@Controller('accounts/:id')
export class ResourcesController {
  // http://api.domaine.com/accounts/1/resources
  @Get('resources')
2
Fadel