【问题标题】:Titanium: Facebook API: (#200) Requires extended permission: publish_actionsTitanium:Facebook API:(#200)需要扩展权限:publish_actions
【发布时间】:2015-05-03 20:50:57
【问题描述】:

遵循文档中的标准示例,但它不起作用。

有趣的是,如果我执行 Ti.API.info(fb.getPermissions()),则会列出发布操作。

这是该行的输出:

[INFO] :   permissions=
[INFO] :   publish_actions,status_update,publish_stream,read_stream,manage_pages

代码:

var fb = require('facebook');
fb.appid = '1234567';
fb.permissions = ['publish_actions', 'status_update', 'publish_stream', 'read_stream','manage_pages']; // Permissions your app needs
fb.authorize();

fb.forceDialogAuth = true;

var data = {
    caption: 'This is a test',
    picture: blob
};

fb.requestWithGraphPath('me/photos', data, 'POST', function(e){
    if (e.success) {
        alert("Publish is ok");

    } else {
        if (e.error) {
            alert(e.error);
        } else {
            alert("Unkown result");
        }
    }
});

【问题讨论】:

    标签: facebook facebook-graph-api titanium


    【解决方案1】:

    publish_stream 多年来已被弃用,如果您仍然使用 publish_actions,那将毫无意义。

    话虽如此,错误消息意味着授权过程不成功。如果您尝试作为 Facebook 应用的管理员,您应该在授权后调试您的访问令牌,并确保在此过程中询问您的权限。

    如果您没有尝试使用应用程序的管理员/开发人员/测试人员,很可能是因为权限需要首先在登录审核中获得批准:https://developers.facebook.com/docs/facebook-login/review

    【讨论】:

    • 它以管理员身份工作,但不能以其他用户身份工作。那我需要提交审核吗?
    • 是的,当然。自 2014 年 4 月以来,您必须以大多数权限完成审核流程,否则他们只能以管理员身份工作。正确答案是我答案的最后一段。
    • 好的,提交审核。一旦我能确认这一点,我会奖励正确的答案。
    猜你喜欢
    • 2015-09-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多