OpenFB AngularJS从本地存储获取FBToken

时间:2015-05-27 10:46:49

标签: javascript angularjs local-storage ionic-framework ng-storage

所以,我有一个需要FB登录的Ionic应用程序,一切都很好,但我需要做的是为每个API请求添加2个自定义标头。再次,这应该工作...我遇到的问题是,由于某种原因,我无法获取成功登录时设置的'fbtoken'。这是一些代码:

的LoginController:

OpenFB.login('email, user_friends').then(
            function () {
                OpenFB.get('/me').success(function (user) {
                    $localStorage.fbuser = user; //Set the user in local storage.
                });

                RequestService.get($scope.baseUrl + 'user')
                    .success(function(data, status, headers, config){
                        alert('Success!!!! ' + data);
                    }).error(function(data, status, headers, config){
                        if(status = 401) alert('Not Authorized!');
                    });
            },
            function (error) {
                alert('OpenFB login failed' + error);
            });
    };

app.js

.config(function($stateProvider, $urlRouterProvider, $httpProvider) {

        $httpProvider.interceptors.push(function($q, $localStorage) {
            console.log($localStorage);
            return {
                'request': function(config) {

                    config.headers['Auth-Token'] = JSON.parse(localStorage.get("fbtoken"));
                    config.headers['Auth-Provider'] = 'facebook';
                    return config;
                }
            };
        });
});

我可以从控制器中设置的本地存储访问fbuser。 fbuser&的唯一区别fbtoken如果我看一下Chrome Inspector的名称是不同的:

fbtoken
ngStorage-fbuser

这是问题吗?我可以将fbtoken的值输入我的感受器吗?

1 个答案:

答案 0 :(得分:0)

好的,我没有使用ngStorage模块,而是决定使用原生JS并运行localStorage.setItem(option, value)& localStorage.getItem(option)