I have a very basic login service, no real authentication, but when if i redirect with a page refresh using $window.location.href the data is lost. When the user gets 'logged in' and the page is redirected to the homepage, instead its resolves as loggedIn = false and redirects back to the login page.
How can i prevent this from happening?
Code snippets:
LoginController
ApiService.getUser($scope.user)
.success(function (data) {
UserService.user = data;
UserService.isLogged = true;
$window.location.href = '/';
})
UserService
return {
user: {},
isLogged: false
};
RequireLoginService
return {
loginRequired: function () {
var deferred = $q.defer();
if (!UserService.isLogged) {
deferred.reject();
$location.path('/login');
} else {
deferred.resolve()
}
return deferred.promise;
}
}
app module
$routeProvider
.when('/', {
templateUrl: 'views/sheet.html',
controller: 'SheetCtrl',
resolve: {
loginRequired: function(RequireLoginService) {
return RequireLoginService.loginRequired();
}
}
})