2 pièce(s) jointe(s)
Sauvegarder en mémoire les paramètres de la connexion.
Bonjour Chers tous,
Merci à tous ceux qui voudront bien prendre de leur temps, pour m'aider a la résolution de ce problème.
En effet j'ai crée une application mobile avec ionic/angular. Et le souci se trouve au niveau l'authentification.
Je souhaiterai garder en mémoire, les paramètres de connexion de l'utilisateur lors de sa première connexion pour ne plus qu'il ait à se connecter encore les prochaines fois a moins qu'il ait envie de renseigner d'autre paramètre la prochaine fois.
Le principe:
homepage.html (la page d'accueil lors du lancement de l'application) voir image ci-dessous.
l'utilisateur, clique sur le bouton " MON SOLDE"
Pièce jointe 597275
il est dirigé vers la page de connexion:
loginpage.html(la page d'authentification) voir image ci dessous
Pièce jointe 597277
et une fois les paramètres validés, elle sont stockés dans le native Storage, pour pouvoir naviguer entre les pages.
script:
loginpage.ts
Code:
1 2 3 4 5 6 7 8 9
|
loginUser() {
if (this.form.value) {
this.authService.login(this.form.value);
}
else{
console.log('Please enter badge/telephone or password.');
}
} |
autService.ts:
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32
|
login(user) {
//console.log(user);
let urlToGet = "http://www.tchek.com/test/?action=GTD&badge=" + user.badge;
this.http.get<any[]>(urlToGet)
.subscribe(
async (res: any[]) =>
{
this.badge = res
this.dataBadge = this.badge.PAYLOAD.SUBSCRIPTIONS.TAGS.TAG_ID;
this.dataTel = this.badge.PAYLOAD.PHONE_1;
if(this.dataBadge == user.badge && this.dataTel == user.telephone)
{
this.LocalServ.loadingPresent();
this.response = res;
this.LocalServ.storeUserInformations(this.response);
this.router.navigate(["/profile"]);
this.authState.next(true);
}
else {
console.log('incorrect password.');
this.toastService.presentToast('Badge et/ou Telephone incorrect.');
}
},
(error: any) => {
console.log('Network Issue.');
this.toastService.presentToast('Verifiez votre connexion.');
}
);
} |
LocalService.ts:
Code:
1 2 3 4 5 6 7 8 9
|
async storeUserInformations(user){
this.storage.setItem("USER_INFO", user)
.then((response) =>
{this.loadingDismiss()},
catchError(this.handleError)
);
} |
Alors ma préoccupation c'est comment éviter l'utilisateur de toujours renseigner ces paramètres d'authentification pour consulter son solde.
L'idée serait lors de sa toute première connexion, que le téléphone garde ces info en mémoires et afin de lui permettre de directement accéder a la page (profilpage.html) sans être obligé entrer ces paramètres.