J'ajoute une fonctionnalité à un site Angular2 pour afficher le nom de l'utilisateur actuellement connecté.Requêtes HTTP infinies au back-end lors de l'abonnement à un observable
Je semble être en mesure de récupérer les informations dont j'ai besoin du service principal. Toutefois, lorsque le code frontal en question est en cours d'exécution, les demandes à l'arrière-plan sont envoyées à plusieurs reprises et aussi rapidement que possible lorsqu'une seule demande est nécessaire.
Cette boucle infinie de requêtes a commencé lorsque j'ai changé le code pour m'abonner à un observable. Sans m'abonner, les informations que j'ai pu récupérer du service frontal n'étaient pas utilisables; cela ressemblait à l'exemple ci-dessous.
{"_isScalar":false,"source":{"_isScalar":false},"operator":{}}
Component
loggedInUser() {
this.authService.loggedInUser().subscribe(res => {
this.currentUser = res;
return this.currentUser;
})
}
service frontal
loggedInUser() {
const userId = localStorage.getItem('userId');
return this.http
.get('http://localhost:3000/user/current/' + userId)
.map((response: Response) => {
const user = response.json();
return user;
})
J'ai appris que ce n'est pas vraiment une "boucle infinie" à la lecture d'autres messages sur Stack Overflow . Cependant, je n'ai pas été capable de comprendre les solutions dans ces autres postes.
Nous vous remercions de votre aide!