(VERWENDUNG VON IONIC SERVE IM BROWSER) Wenn sich ein Benutzer in meiner App anmeldet, wird eine Verbindung zur Datenbank hergestellt und einige vorläufige Daten werden mit ihrer ID eingefügt. Das funktioniert gut. Das Problem kommt, wenn Sie sich abmelden und dann wieder anmelden, wenn es wieder zu verbinden versucht, es sagt:IonicDB ungültiger Handshake beim erneuten Herstellen der Verbindung nach dem Trennen
"Connection Failed: Invalid handshake."
Wenn ich mich wieder auslogge und die App aktualisieren, und dann melden Sie sich dann funktioniert es ok. Ich denke, dass etwas in den Auth oder Datenbank-Providern einen Wert von vor dem Abmelden hält, weshalb die Verbindung für den neuen Benutzer fehlschlägt. Ich habe mir den lokalen Speicher in Chrome Dev angeschaut und alles außer "ionic_insights_session" wird gelöscht, wenn ich mich auslogge. Also ich weiß nicht, was das Problem ist. Ein paar Code-Snippets für Sie:
Wenn sich ein Benutzer anmeldet:
this.auth.signup(details).then(() => {
this.auth.login('basic', details).then(() => {
this.db.connect();
this.doneLoading();
this.navCtrl.setRoot(GuidePage, {'justSignedUp': true}, {'animate': true, 'direction': 'forward'})
}, err => {
this.doneLoading();
this.showErrPopup("Check your internet connection");
});
}
diese sie an der Führungsseite sendet, wo:
ionViewDidLoad() {
if (this.navParams.data.justSignedUp) {
var points = this.db.collection("points");
points.insert({
id: this.user.id,
points: 9000
});
}
}
Und schließlich abzumelden:
logout() {
this.auth.logout();
this.db.disconnect();
this.navCtrl.setRoot(StartPage, null, {'animate': true, 'direction': 'back'});
}
Wie bereits erwähnt, wenn ich abmelde und dann den Browser aktualisieren, funktioniert es gut. Jede Hilfe wäre toll Prost
Technisch die richtige Antwort. Die beste Art von richtig :) –