je suis débutant dans AngularJS, j'ai lu un tutoriel sur la connexion et l'authentification avec js angulaire mais je suis encore confus dans de nombreux points de mon code, pour l'instant je suis arrivé à se connecter et stocker un jeton dans le navigateur session, mais je ne peux pas rediriger vers la page d'accueil après vous reconnecter à, ici est myservice:mécanisme d'authentification dans angularjs
function authenticationSvc ($http, $q, $window, auth_uri) {
var userInfo;
function login(username, password) {
var deferred = $q.defer();
$http.post(auth_uri, {
username: username,
password: password
}).then(function(result) {
userInfo = {
accessToken: result.data.token
};
$window.sessionStorage["pallas_token"] = result.data.token;
deferred.resolve(userInfo);
},
function(error) {
deferred.reject(error);
});
return deferred.promise;
}
function getUserInfo() {
return userInfo;
}
return {
login: login,
getUserInfo: getUserInfo
};
};
et c'est ma config d'état
.state('dashboard', {
url:'/dashboard',
controller: 'HomeController',
templateUrl: 'partials/dashboard/main.html',
resolve:{
auth: function($q, authenticationSvc) {
var userInfo = authenticationSvc.getUserInfo();
if (userInfo) {
return $q.when(userInfo);
} else {
return $q.reject({ authenticated: false });
}
}
}
}
enfin ce mon bloc .run:
angular
.module ('mainApp')
.run (function ($rootScope, $state, $location) {
$rootScope.$on('$stateChangeSuccess', function(userInfo) {
console.log(userInfo);
});
$rootScope.$on('$stateChangeError', function(evt, toState, toParams, fromState, fromParams, error) {
if (error.authenticated == false) {
$state.transitionTo("login");
}
});
});
s'il vous plaît aidez-moi à résoudre ce problème, je dois aider mes amis :(
je suis désolé d'avoir manqué pour poster mon contrôleur de connexion, il y a:
function LoginController($scope, $state, authenticationSvc){
$scope.submit = function(credentials){
authenticationSvc.login(credentials.username, credentials.password);
};
};
S'il vous plaît montrer également le contrôleur de votre page de connexion – manzapanza
désolé, j'ai encore ajouté mycontroller. –