FacebookプラグインでPhoneGap/Cordovaを使用しています。hereおよびhereの定義どおりに機能していない getLoginStatus を除いて、すべてが機能しているようです。呼び出されると、一部のデータが返されますが、すべてではありません。userID も signedRequest も返されません。コードは次のとおりです。
FB.getLoginStatus(function(response) {
if (response.status == 'connected') {
var fb_uid = response.authResponse.userID;
var fb_signedRequest = response.authResponse.signedRequest;
alert('logged in');
} else {
alert('not logged in');
}
});
userID は省略記号 (...) で埋められますが、signedRequest は未定義です。
/me へのグラフ呼び出しで userID を取得できました。
FB.api('/me', function(me){
if (me.id) {
var fb_uid = me.id;
}
});
ユーザーが既にfacebookで接続しているリモートサービスにfacebookユーザーを認証するために使用する必要があるsigned_requestを取得する方法をドキュメントで見つけることができませんでした(すでにログインコールを行ったので、ユーザーはわかった)。基本的に問題は、getLoginStatus への呼び出しが返されることです。
{
status: 'connected',
authResponse: {
session_key: true,
accessToken: 'a long string...',
expiresIn:'a number',
sig: '...', //exactly this string
userID:'...' //exactly this string
secret:'...' //exactly this string
expirationTime:'a long number'
}
}
文書化されたものの代わりに