Maison > interface Web > js tutoriel > Comment transmettre les paramètres rendus par le backend au bootstrap angulaire 2 pour définir les en-têtes HTTP ?

Comment transmettre les paramètres rendus par le backend au bootstrap angulaire 2 pour définir les en-têtes HTTP ?

Mary-Kate Olsen
Libérer: 2024-12-06 09:01:10
original
185 Les gens l'ont consulté

How to Pass Backend-Rendered Parameters to Angular 2 Bootstrap for Setting HTTP Headers?

Paramètres d'amorçage Angular2 du backend à l'aide de l'injection de dépendances

Problème :

Dans Angular2, comment les paramètres rendus sur le backend peuvent-ils être transmis à la méthode d'amorçage pour définir les en-têtes HTTP pour toutes les requêtes utilisant BaseRequestOptions?

Solution :

En utilisant l'injection de dépendances d'Angular, les paramètres peuvent être transmis directement à la fonction bootstrap :

var headers = ... // retrieve headers from backend

bootstrap(AppComponent, [{provide: 'headers', useValue: headers})]);
Copier après la connexion

Pour injecter les en-têtes en composants ou services, utilisez le décorateur @Inject() :

class SomeComponentOrService {
   constructor(@Inject('headers') private headers) {}
}
Copier après la connexion

Alternativement, une classe d'options de requête personnalisée peut être créée et injectée directement :

class MyRequestOptions extends BaseRequestOptions {
  constructor (private headers) {
    super();
  }
} 

var values = ... // retrieve headers from backend
var headers = new MyRequestOptions(values);

bootstrap(AppComponent, [{provide: BaseRequestOptions, useValue: headers})]);
Copier après la connexion

Approches supplémentaires :

  • APP_INITIALIZER : Initialise les services avec données du backend avant d’initialiser l’application. Ceci est utile pour définir les valeurs d'en-tête.
  • Injection de constructeur : Le constructeur Angular 2 peut être utilisé pour l'initialisation au lieu de la méthode d'amorçage.
  • AoT (Ahead -of-Time Compilation) : Certaines modifications sont nécessaires pour fonctionner avec AoT, comme le déplacement de la fermeture de l'usine hors du fournisseur.
  • Injecteur : Si une dépendance cyclique se produit (par exemple, injection du routeur), l'injecteur peut être utilisé pour récupérer la dépendance au lieu d'une injection directe.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal