如何缓存AngularJS的登录数据?

时间:2015-10-13 14:42:54

标签: javascript angularjs http caching login

我最近尝试创建一个登录页面,当用户登录时,会出现一个弹出框,询问他们是否要保存他们的凭据。如果是,那么下次用户进入登录页面时,ID&密码已经填写完毕。除非他们是新用户,否则永远不会再看到弹出窗口。有人可以告诉我如何缓存登录数据吗?

JS:

//Check login credentials against db
          $http.post('http://178.32.64.76:8765/login', {
            IDNumber: $scope.login.IDnumber,
            password: $scope.login.password
          })
          .then(function(response) {
            $scope.status = response.status;
              var confirmPopup = $ionicPopup.confirm({
                template: 'Do you want to save your login credentials?',
                okText: 'Yes',
                cancelText: 'No'
              });

              confirmPopup.then(function(popupResponse) {
                if (popupResponse) {
                //Caching code will go here

              }

              $state.go('tab.dash');
              });

输入:

<input name="IDnumber" type="text" placeholder="ID Number"
ng-model="login.IDnumber" ng-minlength="10" ng-maxlength="10" numbers-only required>

<input name="password" type="password" placeholder="Password"
ng-model="login.password" required>

1 个答案:

答案 0 :(得分:0)

您可以使用$localStorage对象的$window来存储您的用户数据。此数据将一直保留,直到清除浏览器缓存。

虽然如果不存储用户名和密码会更好。相反,您可以存储登录状态。比如,用户登录后,现在您可以将标记存储在localstorage中,并将值设置为true,稍后再使用它来直接登录用户。