2015-08-18 12 views
6

Nella console il mio codice è la stampa:

[Object, oggetto]

Non posso drill-down normalmente.

ho cercato JSON.parse e JSON.stringify senza successo.

Il mio servizio che imposta le credenziali:

setCredentials.js

'use strict'; 

// service that handles setting and getting cookies 

app.service('setCredentials', function($cookies) { 

    // function that gets json object and stores it inside a cookie 
    this.storeInCookie = function(responseObject) { 

     console.log(responseObject); 

     //set the cookie 
     var cookieObj = { 
      currentUser: { 
       userType: responseObject.auth.userType, 
       username: responseObject.auth.email, 
       token: responseObject.auth.token 
      } 
     }; 


     console.log(cookieObj); 
     //set up header, in case we need auth token inside it for later 
     //$http.defaults.headers.common['Authorization'] = 'Basic ' + authdata; 
     //store inside of cookie 
     $cookies.put('globals', cookieObj); 

     return true; 

    }; 

    //function to remove cookie 
    this.removeCookie = function() { 



    }; 

    //function to get cookie 
    this.getCookie = function(cookieName) { 

     //get cookie 
     return $cookies.get(cookieName); 

    }; 

}); 

Ho poi chiamo l'oggetto cookie in un controllore:

navigationController.js

'use strict'; 

//app global variable 
//this is the controller that handles post requests 
//declare services as dependecies $http, $location, custom service apiServiceWeb 
app.controller('navigationController', function($scope, $rootScope, $http, $location, $cookies, setCredentials) { 


    //navigation menu 

    //get what is in the cookie 
    var cookieValue = setCredentials.getCookie('globals'); 
    console.log($cookies.get('globals')); 

}); 
+0

Si prega di aggiungere il '$ log' [dipendenza] (https://docs.angularjs.org/api/ng/service/$log) nella dichiarazione di servizio:' app.service ('setCredentials', function ($ cookie, $ log) ... ', quindi è possibile utilizzare la registrazione avanzata, come:' $ log.debug (responseObject); '. Spero che questo aiuti. – barfoos

risposta

17

Usa

$cookies.putObject('globals', cookieObj) 

e

$cookies.getObject('globals') 

invece.

+1

grazie ha fatto il trucco – user3754111