Titanium:Facebook API:(#200)需要扩展权限:publish_actions

时间:2015-05-03 20:50:58

标签: facebook facebook-graph-api titanium

遵循文档中的标准示例,但它无效。

有趣的是,如果我执行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");
        }
    }
});

1 个答案:

答案 0 :(得分:1)

publish_stream多年以来一直被弃用,如果你使用publish_actions,那就毫无意义。

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

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