facebook-javascript-sdk - Facebook All.Js 新错误

标签 facebook-javascript-sdk

我有一个使用 Facebook JS SDK 的网站,它运行良好超过 2 年

今天 Facebook 部分(我使用 SDK 在主页的选项卡中显示用户时间线)停止工作,当页面加载时它给我这个 JavaScript 错误

任何帮助将不胜感激

错误:错误:表达式是字符串类型,不是对象 源文件:http://connect.facebook.net/en_US/all.js 行:37

最佳答案

它并不像替换 FB.Data.waitOnFB.Data.query 那样简单。

我目前正在使用 FB.Data.query 函数调用来进行 FQL 调用,以优雅地测试用户是否已接受 publish_stream 我的应用程序的许可。 像这样:

FB.api('/me', function(response) {
    var user_id = response.id;
    var query = FB.Data.query('select publish_stream from permissions where uid={0}', user_id);
    query.wait(function(rows) {
        if (rows[0].publish_stream == 1) {
            //user has accepted our publish_stream permissions
        } else {
            //user has not accepted our publish_stream permissions
        }
    });
});

在 google 和搜索那个糟糕的 facebook 开发者论坛之后;直到我在这里看到另一篇文章,我才找到我要找的东西 check for extended permissions with new facebook javascript sdk

然后我想出了我的解决方案:

FB.api('/me/permissions', function(response) {
    if (response && response.data) {
        var permissions = response.data.shift();
        //console.log(permissions);
        if (!permissions || (!permissions.publish_stream) || (permissions.publish_stream == 0)) {
            //user has not accepted our publish_stream permissions
        } else {
            //user has accepted our publish_stream permissions
        }
    }
});

关于facebook-javascript-sdk - Facebook All.Js 新错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13047743/

相关文章:

javascript - Facebook Graph API 只返回用户名

reactjs - 使用 AWS Cognito 和 React 仅通过 Facebook/Google 登录(无用户名/密码)

javascript - FB Graph API : Posting as a page, 到不同页面

javascript - 自动登录 facebook - FB.Event.subscribe auth.login 不起作用

javascript - 一页上的多个 Facebook 分享

facebook-graph-api - 使用 JavaScript SDK 批量请求限制字段

jquery - 如何使用 facebook api 邀请经过授权的 facebook 用户应用程序和游戏组?

javascript - Facebook javascript FB.ui 请求在 IE11 和 Firefox 上挂起

javascript - 使用 Facebook js SDK 从 Facebook 获取用户兴趣和喜欢以及图像

facebook - 为什么 FB.getLoginStatus() 总是返回 response.status "unknown"?