Angular - Paramètre redondant dans un service

Quand passer ce paramètre au body ?

a marqué ce sujet comme résolu.

Bonjour,

j’ai un projet en Angular contenant des services. Pour toutes les routes appelées depuis les services, j’ai besoin d’envoyer des paramètres encryptés de base de donnée lus depuis un fichier.

Cependant, j’ai besoin de quelques conseils sur le point suivant : est-il mieux d’envoyer ces paramètres quand j’appele la fonction du service depuis un component, ou bien d’ajouter ces paramètres dans la fonction du service ?

J’ai deux solutions :

Solution 1

componentFunction() {
  let params = {
    var1: 'aaa',
    var2: 'bbb',
    database: {
      host: 'xxxxxxx',
      port: 'xxxx',
      login: 'xxxxxxxxxx',
      password: 'xxxxxxxxxxxx'
  }
 
  this.service.serviceFunction(params);
}

Solution 2

  • Dans le component
componentFunction() {
  let params = {
    var1: 'aaa',
    var2: 'bbb'
  };
 
  this.service.serviceFunction(params);
}
  • Dans le service
serviceFunction(params: any) {
  params.database = {
    host: 'xxxxxxx',
    port: 'xxxx',
    login: 'xxxxxxxxxx',
    password: 'xxxxxxxxxxxx'
  }
 
  this.http.post(this.apiUrl, params).subscribe((res: any) => {
    // Operations ...
  });
}

Qu’en pensez-vous ?

L’idéal est de centraliser au maximum. Si tes params sont identiques pour tout un service, c’est là qu’il faut les mettre.

S’ils varient d’un composant à l’autre alors il faudra spécialiser le traitement…

viki53

Donc du coup la solution 2 ? Sinon que penses-tu de l’utilisation d’un interceptor ?

Connectez-vous pour pouvoir poster un message.
Connexion

Pas encore membre ?

Créez un compte en une minute pour profiter pleinement de toutes les fonctionnalités de Zeste de Savoir. Ici, tout est gratuit et sans publicité.
Créer un compte