facebook publish_action - 检查是否跳过了按下

时间:2013-05-17 06:38:42

标签: facebook-graph-api error-handling

我想使用Facebook publish_action权限在用户的时间轴上发帖。

这会显示一个请求权限的页面,有2个按钮OkaySkip

然而,当我测试两个按钮时,回调网址似乎没有区别。没有错误代码或类似内容,我可以使用它来检查是否按下了OkaySkip

我该怎么办?看来我在这里遗漏了一些东西。

现在我正打电话在时间轴上发帖,并期望获得以下结果:

403
{"error":
    {"message":"(#200) The user hasn't authorized the application to perform
                this action",
     "type":"OAuthException",
     "code":200
    }
}

1 个答案:

答案 0 :(得分:2)

你没有遗漏任何东西。当向用户显示允许或拒绝Extended Permission的选项时,无论他们选择什么,他们都将被重定向到您的重定向URL。

仅当用户拒绝授权应用程序时才会发送错误。有两种方法可以处理这些错误

  • 捕获抛出的这些错误并检查它们是否在200-299范围内,对应于User either has not granted a permission or removed a permission(从错误引用documentation)。然后根据您尝试的事情,再次请求许可。

  • 通过在/user-id/permissions端点进行检查,检查您是否有足够的权限在执行之前执行API调用。