0

하이브리드 모바일 앱을 개발 중이며 새로운 점이 있습니다. 프로젝트의 일환으로 서버에 서비스 요청을 인증하는 헤더에 쿠키가 있습니다. 이제 로그 아웃 옵션을 클릭 할 때 쿠키 또는 헤더를 지우는 데 문제가 있습니다. 이 앱으로 인해 자격 증명을 입력하지 않아도 기록됩니다.이 상황을 처리 할 수있는 방법을 알려주십시오. Headers listAngular Js에서 쿠키를 처리하는 방법

Set-Cookie 매개 변수를 처리해야합니다. 필요한 정보가 있으면 알려주십시오. 완전히 새로운 기능이므로 누락 된 정보가 있으면 무시하십시오.

답변

0

기본적으로 서버는 로그 아웃 작업 후 Set-Cookie : % auth_key % : null을 반환해야하지만 ngCookies 모듈의 $ cookies 공급자를 통해 쿠키를 수동으로 설정 해제 할 수 있습니다.

angular.module('cookiesExample', ['ngCookies']) 
.controller('ExampleController', ['$cookies', function($cookies) { 
    // Retrieving a cookie 
    var favoriteCookie = $cookies.get('myFavorite'); 
    // Setting a cookie 
    $cookies.put('myFavorite', 'oatmeal'); 
    // Removing a cookie 
    $cookies.remove('your_auth_key'); 
}]); 

편집 :

var commonHeaderModule = angular.module('commonHeaderModule', ['ngCookies']); 

commonHeaderModule.controller('commonHeaderController', ['$scope', '$cookies', '$lo‌​cation', '$rootScope'‌​, 
    function($scope, $cookies, $location, $rootScope) { 
     $(document).on('click', function() { 
      $('.collapse').collapse('hide'); 
     }); 
     $scope.logout = function() { 
      $cookies.remove('Cookie'); 
      alert("done"); 
     } 
    } 
]); 
+0

내가 로그 아웃 서비스를, 수동으로 처리 할 필요가 없습니다. 위의 방법을 시도했지만 그 오류 던지고있다. 아래 코드는 내 코드입니다. var commonHeaderModule = angular.module ('commonHeaderModule', [ 'ngCookies']); commonHeaderModule.controller ('commonHeaderController', [ '$ scope', '$ cookies', '$ location', '$ rootScope', function ($ scope, $ 쿠키, $ 위치, $ rootScope) { \t $ 문서) CSTE 연구진 ((, 기능을 '클릭') { \t \t $ 축소 ('숨기기') ('축소합니다.');. \t}) \t $ scope.logout = 함수() { $ 쿠키 .remove ('Cookie'); alert ("done"); \t} }]); –

+0

TypeError : undefined가 함수가 아닙니다. at k. $ scope.logout (file : ///android_asset/www/js/modules/commonHeaderController.js : 9 : 14) at file : /// android_asset/www/lib /js/angular.min.js:176:387 at file : ///android_asset/www/lib/js/angular.min.js : 193 : 521 at k. $ eval (file : /// android_asset/www/lib/js/angular.min.js : 112 : 15) –

+0

실제로 ngCookies를 설치 했습니까? 이 모듈은 별도의 모듈로 bower (각 설치 쿠키 설치) 또는 수동 다운로드 (https://code.angularjs.org/1.5.8/)를 통해 설치할 수 있습니다. –