0

Ich entwickle eine hybride mobile App und bin neu dabei. Als Teil des Projekts gibt es einen Cookie in Kopfzeilen, der meine Serviceanrufe auf dem Server authentifiziert. Jetzt Problem beim Löschen des Cookies oder Header beim Abmelden Option. Aufgrund dieser App wird auch ohne Eingabe von Anmeldeinformationen protokolliert.Bitte helfen Sie mir mit möglichen Möglichkeiten, diese Situation zu behandeln. Headers listWie man mit Cookie in Angular Js umgehen kann

Ich muss mit dem Set-Cookie-Parameter umgehen. Bitte lassen Sie mich wissen, wenn irgendwelche Informationen erforderlich sind. Ich bin völlig neu in diesem, so ignorieren, wenn es irgendwelche Informationen fehlen.

Antwort

0

Grundsätzlich sollte der Server Set-Cookie:% auth_key%: null nach der Abmeldeaktion zurückgeben, aber Sie können die Cookies manuell über den $ cookies-Provider vom ngCookies-Modul zurücksetzen.

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'); 
}]); 

EDIT:

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

ich nicht Logout-Service haben, so müssen manuell zu handhaben. Ich habe den obigen Ansatz versucht, aber seinen Wurffehler. Unten ist mein Code. var commonHeaderModule = angular.module ('commonHeaderModule', ['ngCookies']); commonHeaderModule.controller ('commonHeaderController', '$ scope', '$ cookies', '$ location', '$ rootScope', Funktion ($ scope, $ cookies, $ location, $ rootScope) { \t $ (Dokument) .auf ('Klick', function() { \t \t $ Zusammenbruch ('verstecken ') (' kollabieren.');. \t}) \t $ scope.logout = function() { Cookies $ .remove ('Cookie'); Alarm ("erledigt"); \t} }]); –

+0

TypeError: undefined ist keine Funktion bei k. $ Scope.logout (file: ///android_asset/www/js/modules/commonHeaderController.js: 9: 14) bei file: /// android_asset/www/lib /js/angular.min.js:176:387 bei file: ///android_asset/www/lib/js/angular.min.js: 193: 521 bei k. $ eval (file: /// android_asset/www/lib/js/angular.min.js: 112: 15) –

+0

Haben Sie tatsächlich ngCookies installiert? Dies ist ein separates Modul, Sie können es über Bower installieren (Bower installieren Winkel-Cookies) oder manuell herunterladen (https://code.angularjs.org/1.5.8/). –

Verwandte Themen