Facebook Graph API 2.0可以喜欢/评论但不是评论

时间:2015-04-20 19:13:30

标签: facebook facebook-graph-api facebook-test-users

与小部件一样,“注释”小部件不会:查看更新2


我继承了一个具有Graph 1.0实现的项目。用户可以使用Facebook登录,然后在网站上点赞和评论。

身份验证系统(symfony / php)直接与Facebook进行交互,以便识别用户,这样,如果他们不存在,可以创建个人资料,如果他们确实存在,他们可以登录本地系统也是如此。

Like和Comment小部件已更新为使用2.0语法:

window.fbAsyncInit = function() {
        FB.init({
            appId      : 'KEY_HERE',
            xfbml      : true,
            version    : 'v2.3'
        });
    };
</script>
<script>(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/es_US/sdk.js";
    fjs.parentNode.insertBefore(js, fjs);
    }(document, 'script', 'facebook-jssdk'));</script>

这似乎工作正常。小部件生成,使用我个人的Facebook帐户,我可以发布和喜欢,并在这个网站和Facebook上看到结果。

同时,对于身份验证,应用程序会生成如下所示的授权URL:

http://www.facebook.com/v2.3/dialog/oauth?client_id=API_KEY&redirect_uri=REDIRECT_URI&state=TOKEN&scope=SCOPE

范围包括以下内容:

'email', 'user_website', 'offline_access', 'status_update', 'publish_actions', 'publish_stream'

从该请求的回调处理程序中,我们检索用户的Facebook个人资料并转发到用于登录用户或注册用户的自定义代码:

https://graph.facebook.com/v2.3/oauth/access_token?client_id=API_KEY&redirect_uri=REDIRECT_URI&client_secret=API_SECRET&code=CODE

只要我使用我的个人FB个人资料,这似乎也有效。我可以登录,评论和喜欢的东西。

当我使用我的Open Graph Test User登录时,我不喜欢或评论。当试图发表评论时,我收到的错误只是说明了#34;糟糕&#34;在灯箱/对话框中。从我的控制台,我收到以下错误:

for (;;);{"__ar":1,"error":1357010,"errorSummary":"Oops","errorDescription":"Something went wrong. We're working on getting it fixed as soon as we can.","payload":null,"bootloadable":{},"ixData":{},"lid":"0"}

这里显示的是错误代码的完整列表,但未列出1357010:

[http://fbdevwiki.com/wiki/Error_codes][1]

因此,基本问题是,为什么我的Open Graph Test User(配置为以2.0模式运行应用程序)不与小部件交互,而我的个人FB配置文件可以?我是否未能正确升级身份验证系统,以便2.0测试用户没有足够的特权?

[UPDATE]

当我的应用程序将用户登录时,FB对话框中没有允许用户接受所请求权限的部分。无论我是使用我的个人帐户还是使用图表测试用户登录,我都可以像页面一样,然后,从结果对话框中注释 - 该对话框请求允许这样做

但是,从标准的“评论”小部件中,我从未要求授予发布权限 - 它只是失败并显示错误1357010。打开/关闭&#34;也在Facebook上发布&#34;没有区别。

我不是以2.0的方式进行身份验证吗?

[更新2]

看起来我的Open Graph Test User可以像一个页面一样,然后,在确认后,用户可以从Like小部件中对结果对话框中的页面进行注释。

但是,从“注释”小部件中,注释不成功,我得到通用错误代码1357010.

我需要做些什么才能授权我的OG测试用户(v2.3用户)从标准评论小部件提交评论?

1 个答案:

答案 0 :(得分:0)

目前还不清楚你正在做什么电话,我相信“喜欢和评论小工具”你说的是由API驱动而不是官方Facebook插件的自定义控件。

所以问题就在于:测试用户 根据docs

与实际数据进行互动:

  
      
  • 每个应用最多可以创建2000个测试用户。
  •   
  • 测试用户只能与其他测试用户进行交互,而不能与Facebook.com上的真实用户进行交互。
  •   
  • 测试用户无法成为公共Facebook页面的粉丝或在其上创建内容,例如在页面墙上书写。一个测试   但是,用户可以查看页面上的任何应用程序选项卡并与之交互   与创建它们的应用程序相关联。
  •   
  • 测试用户无法回复消息,即使消息是由测试用户创建的。
  •   
  • 测试帐户只能由相关应用的任何开发人员访问和使用。
  •   
  • 测试用户只能在相关应用上拥有“Tester”权限。这意味着他们可以在公共模式下使用该应用程序   开发模式,但无法编辑任何技术设置或访问权限   该应用的见解。
  •   
  • 无法将测试帐户转换为普通用户帐户。
  •   

如果您正在与实际数据进行交互,则可能无效。您可以通过创建一个新的测试用户并观察结果来测试它。