[英]Manage session and cookies in user login using angular.js
我有一個登錄應用程序,在這里我需要使用angular.js使用會話和cookie。我在下面解釋我的代碼。
loginController.js:
var loginAdmin=angular.module('Channabasavashwara');
loginAdmin.controller('loginController',function($scope,$http,$location){
$scope.user_name = '';
$scope.user_pass = '';
$scope.user_login=function(){
if($scope.user_name==''){
alert('user name filed should not keep blank');
}else if($scope.user_pass==''){
alert('password filed should not keep blank');
}else{
var userData={'user_name':$scope.user_name,'user_pass':$scope.user_pass};
console.log('user',userData);
$http({
method: 'POST',
url: "php/Login/login.php",
data: userData,
headers: { 'Content-Type': 'application/x-www-form-urlencoded' }
}).then(function successCallback(response){
console.log('response',response);
alert(response.data['msg']);
$location.path('dashboard');
},function errorCallback(response) {
alert(response.data['msg']);
});
}
}
});
這里我的要求是用戶成功登錄時會話將存儲,並且在注銷時它將移動。類似地,cookie將存儲一些到期時間( lets say 10 min
),在該時間到期后它將自動注銷並發出一個警報留言。請幫助我。
使用angularjs作為cookie所需的模塊,可以下載並添加到ngCookie項目中,並在此處帶有示例,但是您也可以使用基本的javascript獲取和設置cookie。
下面是setCookie函數,該函數獲取cookie name
, cookie value
和cookie過期的天數。 您可以在用戶登錄時設置cookie ,並在注銷時將其刪除 。
function setCookie(cname, cvalue, exdays) {
var d = new Date();
d.setTime(d.getTime() + (exdays*24*60*60*1000));
var expires = "expires="+d.toUTCString();
document.cookie = cname + "=" + cvalue + "; " + expires;
}
angularjs cookie的示例
angular.module('cookiesExample', ['ngCookies'])
.controller('ExampleController', ['$cookies', function($cookies) {
// Retrieving a cookie
var favoriteCookie = $cookies.get('myFavorite');
// Setting a cookie
$cookies.put('myFavorite', 'oatmeal');
}]);
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.