Facebook アプリでユーザーを認証しようとしています。私は次のコードを使用しています:
window.fbAsyncInit = function () {
FB.Event.subscribe('auth.statusChange', fbIsReady);
FB.init({ appId: app_id, channelUrl: channelUrl, status: true, cookie: true, xfbml: true, oauth: true});
FB.Canvas.setAutoGrow();
FB.Canvas.scrollTo(0, 0);
};
(function (d) {
var js, id = 'facebook-jssdk'; if (d.getElementById(id)) { return; }
js = d.createElement('script'); js.id = id; js.async = true;
js.src = "//connect.facebook.net/en_GB/all.js";
d.getElementsByTagName('head')[0].appendChild(js);
} (document));
function fbIsReady(res){
fbReady = 1;
var params = {method: "oauth", "scope": 'publish_stream'};
FB.ui(params, isLoggedIn);
}
function isLoggedIn(res){
if(!res || res.status === 'not_authorized' || res.perms != 'publish_stream')
fbIsReady();
else if(res.hasOwnProperty('selected_profiles')){
FB.api('/me', {access_token: FB.getAccessToken()}, checkUserInfo);
}
}
function checkUserInfo(){
console.log(res); // return the error bellow right after the user gives permissions and the expected result after refresh
}
私の問題は、ユーザーがアプリで認証した後、アクセス トークンが設定されていないことです。機能させるには、ページを更新する必要があります。ユーザー認証の後、FB.api('/me'...) を実行できると思いますが、次のようになります。
コード: 2500 メッセージ: 「現在のユーザーに関する情報を照会するには、アクティブなアクセス トークンを使用する必要があります。」タイプ: "OAuthException"
ページを更新するまで。何か案が??
ありがとう