だから、私は FB ログインを必要とする Ionic アプリを持っています。すべて問題ありませんが、すべての API リクエストに 2 つのカスタム ヘッダーを追加する必要があります。繰り返しますが、これは機能するはずです...私が抱えている問題は、何らかの理由で、ログインの成功時に設定された「fbtoken」を取得できないことです。ここにいくつかのコードがあります:
ログインコントローラー:
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 にアクセスできます。Chrome Inspector を見ると、 fbuser と fbtoken の唯一の違いは、名前が異なることです。
fbtoken
ngStorage-fbuser
これは問題ですか?fbtoken の値をインセプターに取得できますか?