0
ログインコントローラ内にCookieを設定しました。私がコントローラの外にあるクッキーの値を取得しようとすると、エラーが発生します。私が逃していることをこれをチェックしてください。コントローラの外部でCookieを使用するには?
コントローラ私は、私はそれがAngularLoginControllerを呼び出してログインし、成功応答の後にクッキーの値を設定した後、私はクッキー
app.controller('AngularLoginController', ['$scope','$http','$cookies','$rootScope', function($scope, $http,
$cookies,$rootScope) {
$scope.loginForm = function() {
$http.post("login.php", {
'email' :$scope.inputData.email,
'password':$scope.inputData.password
}).success(function(data) {
console.log(data);
if (data != 'wrong') {
var loggedIn = $cookies.get('loggedIn');
// Putting cookies
$cookies['myCookieArray']= {'loggedIn':true,'username':data};
getmycookiesback = $cookies['myCookieArray'];
window.location.href = '#/userlist';
$rootScope.display = true;
$rootScope.username = getmycookiesback.username;
}
else {
$scope.errorMsg = "Invalid Email and Password";
}
})
}
}]);
を設定しています成功応答を取得した後。私はコントローラでそれを定義した場合、それは未定義ですなぜ
コントローラ外部に私はそれがエラーgetmycookiesbackを投げクッキーの値を比較していた場合には、
var onlyLoggedIn = function ($location,$q,$cookies,$rootScope) {
var deferred = $q.defer();
var url = $location.absUrl();
if (getmycookiesback.loggedIn === "undefined") { // Error on This line
deferred.reject();
window.location.href = '#/login';
}
else{
deferred.resolve();
$rootScope.display = true;
$rootScope.username = getmycookiesback.username;
window.location.href = url;
alert(getmycookiesback.username);
//$cookies.remove('loggedIn');
return true;
}
return deferred.promise;
};
が定義されていません。 私はコントローラの外でクッキーの価値を得ることができる別の方法はありますか?