【问题标题】:How to clear cookies in angularjs?如何清除angularjs中的cookies?
【发布时间】:2015-05-07 10:45:46
【问题描述】:

我正在使用具有基本身份验证的网络服务,即下面的代码显示了我如何调用网络服务

var url='http:url.com/;
      $http.defaults.headers.common['Authorization'] = 'Basic ' + Base64.encode(Username + ':' + password);
      $http({method: 'GET', url: url}).
          success(function(data) {
              if(data=='' || data==null || data=='undefined'){
                  var alertPopup = $ionicPopup.alert({
                      title: 'Info!',
                      template: 'Invalid Password, or no user found with this Email Address'
                  });
                  alertPopup.then(function(res) {
                      console.log('Invalid Password, or no user found with this Email Address ');
                  });
                  return false;
              }
              else{
                  var favoriteCookie = $cookies['JSESSIONID'];

                  window.localStorage['data'] = JSON.stringify(data);
                  //console.log("LOGIvar: " + data+ " - PW: " + password);
                  console.log(data);
                  $state.go('app.tasklists');
                  return false;
              }
          }).

我得到了正确的响应并且一切正常。 但是当我注销应用程序时,我正在使用以下代码

 $cookieStore.remove('JSESSIONID');
  $cookieStore.remove('JSESSIONIDSSO');
  $http.defaults.headers.common['Authorization']='undefind';
  $scope.modal.show();
  $state.go('login',{}, {reload: true});

真正的问题是,当我注销然后尝试使用错误密码登录时,它会重新登录网络服务,重新调整以前的用户详细信息。我该如何解决这个问题?提前谢谢?

【问题讨论】:

  • 您确定这是一个 cookie 主题,因为您将所有数据都存储在 localStorage 中?
  • 离题:你应该重新考虑你的 if 语句:if(data=='' || data==null || data=='undefined'){...
  • 谢谢,在浏览器中尝试删除 cookie 和标头时,它会要求重新身份验证,并且我在我的 ios 本机应用程序中清除,然后它工作正常。第二个肯定我现在会改变它没有状态返回这就是我这样放的原因

标签: angularjs http-headers ionic-framework session-cookies httpcookie


【解决方案1】:

只是为了回答你的问题:

删除 cookie 和标头,然后它要求重新验证并清除本机应用程序,然后它就可以正常工作了

【讨论】:

  • 谢谢,如何清除原生应用?对不起,打扰您。下面的删除cookie的方法有什么问题吗 $cookieStore.remove('JSESSIONID'); $cookieStore.remove('JSESSIONIDSSO'); $http.defaults.headers.common['Authorization']='undefind'; $scope.modal.show(); $state.go('login',{}, {reload: true});
猜你喜欢
  • 1970-01-01
  • 2014-11-20
  • 2017-02-14
  • 2015-06-22
  • 2018-11-15
  • 1970-01-01
  • 2017-07-26
  • 2018-03-13
  • 1970-01-01
相关资源
最近更新 更多