最近我将旧的v1.0 Facebook网络应用更新为api v2.0, 我根据Facebook的升级指南更改了SDK调用,然后我创建了一个新的Facebook帐户来登录我的应用程序,当我打电话给我/它仍然返回全局用户ID而不是新的应用程序范围ID。
我做错了什么? 我也在iPhone sdk上尝试过,它确实返回了新的应用程序作用域ID。
非常感谢。
以下是我打电话给api的方法:
<script>
function statusChangeCallback(response) {
console.log('statusChangeCallback');
console.log(response);
if (response.status === 'connected') {
// Logged into your app and Facebook.
testAPI();
} else if (response.status === 'not_authorized') {
document.getElementById('status').innerHTML = 'Please log ' +
'into this app.';
} else {
document.getElementById('status').innerHTML = 'Please log ' +
'into Facebook.';
}
}
function checkLoginState() {
FB.getLoginStatus(function (response) {
statusChangeCallback(response);
});
}
window.fbAsyncInit = function () {
FB.init({
appId: 'MY_APPID',
cookie: true, // enable cookies to allow the server to access
// the session
xfbml: true, // parse social plugins on this page
version: 'v2.0' // use version 2.0
});
FB.getLoginStatus(function (response) {
statusChangeCallback(response);
});
};
(function (d, s, id) {
var js, fjs = d.getElementsByTagName(s)[0];
if (d.getElementById(id)) return;
js = d.createElement(s); js.id = id;
js.src = "//connect.facebook.net/en_US/sdk.js";
fjs.parentNode.insertBefore(js, fjs);
} (document, 'script', 'facebook-jssdk'));
function testAPI() {
FB.api('v2.0/me', function (response) {
log(response);
});
}
答案 0 :(得分:0)
已经使用v1.0授权您的应用的用户将保留相同的ID。否则,就无法匹配现有用户。
如果您仍然使用之前未授权该应用的其他帐户获取全局ID,则您的应用很可能不会更新为v2.0。