2015-08-19 1 views
5

ich eine einfache Funktion in einer AngularJS Anwendung schrieb für neue Benutzer anmelden:Parse für Javascript - „Fehler 209 ungültig Session-Token“, wenn Sie einen neuen Benutzer anmelden

$scope.registerUser = function(username, password) { 
    var user = new Parse.User(); 
    user.set("username", username); 
    user.set("email", username); 
    user.set("password", password); 

    user.signUp(null, { 
     success: function(result) { 

     console.log(result); 
     $scope.registerUserSuccess = true; 
     $scope.registerUserError = false; 
     $scope.registerUserSuccessMessage = "You have successfully registered!"; 

     $scope.$apply(); 

     $timeout(function(){ 
      $state.go("user"); 
     }, 1000); 

     }, 
     error: function(user, error) { 
     $scope.registerUserError = true; 
     $scope.registerUserSuccess = false; 
     $scope.registerUserErrorMessage = "Error: [" + error.code + "] " + error.message; 
     $scope.$apply(); 
     } 
    }); 

zunächst fein es funktionierte, aber wenn ich löschte alle Benutzer direkt über Parse.com, ich kann keine neuen Benutzer mit dieser Funktion anmelden. Jedes Mal bekomme ich Fehler 209 ungültige Sitzung Token. Hier ist ein Screenshot von meinem Parse Datenbank:

enter image description here

Ich habe die Fehlermeldung gegoogelt, und die Lösung ist immer den aktuellen Benutzer abzumelden. Wenn jedoch keine Benutzer vorhanden sind, ist dies keine Aktion, die ich ausführen kann.

Also möchte ich nicht nur dieses Problem beheben, sondern auch wissen, wie man es in Zukunft verhindern kann, damit meine Anwendung sicher verwendet werden kann.

Edit: Ich habe einen Benutzer direkt in Parse.com erstellt, schrieb eine Funktion zum Anmelden dieses Benutzers, aber den gleichen Fehler. Ich bleibe völlig stecken, bis dieses Session-Problem gelöst ist.

+0

Wenn der Fehler auftritt, muss sich die App abmelden. So etwas wie: 'if (error.code == 209) logout();' –

Antwort

15

löschen Sie alle Ihre Session-Token, und alles andere Parse wirklich, aus dem lokalen Speicher bezogen werden:

enter image description here

wenn Token deaktivieren Legacy-Sitzung benötigt, und folgen migration tutorial von Grund auf:

enter image description here

+0

Es dauerte eine Minute, bis ich erkannte, dass Sie die Chrome Dev-Tools verwendeten und auf die Registerkarte Ressourcen klicken, um zu den lokalen Speicherinformationen zu gelangen. Weißt du, wie man dasselbe in Firefox macht? Ich habe eine schnelle Suche durchgeführt und anscheinend hat der Firefighter keinen gleichwertigen Ressourcen-Tab. – ericgrosse

+0

Als jemand, der neu in Web-Entwicklung ist, war ich 6 Stunden frustriert. Ich danke dir sehr. –

+0

Es war hilfreich, ich fiel in die gleiche Grube. ;) – Amit

Verwandte Themen