Facebook API - 检查用户是否被暂停或已停用其个人资料

时间:2014-04-20 14:20:02

标签: facebook facebook-graph-api

目标:给定facebook别名或id,检查以下哪项是正确的:

  1. 用户被Facebook暂停
  2. 用户已停用其个人资料
  3. 用户个人资料已存在且未暂停未停用
  4. 对我来说,确定案例1(暂停)是否属实尤为重要,因为案例1表明用户可能存在疑问。

    我发现在已知的已暂停帐户上调用graph.facebook.com/username或graph.facebook.com/id

    {
       "error": {
          "message": "(#803) Some of the aliases you requested do not exist: kamran.haider.5494360",
          "type": "OAuthException",
          "code": 803
       }
    }
    

    如果是已知的已停用帐户,则会返回

    {
       "error": {
          "message": "Unsupported get request.",
          "type": "GraphMethodException",
          "code": 100
       }
    }
    

    问题:

    1. 可以假设上述观察始终存在吗?即对于任何已暂停的帐户,该呼叫返回" OAuthException"代码为803,对于任何已停用的帐户,调用返回" GraphMethodException"用代码100?
    2. 在其他情况下,调用graph.facebook.com/username或graph.facebook.com/id会返回这两个例外吗?
    3. 是否有更好的方法(假设上述方法是有效的方法)来实现目标(尤其是确定是否暂停)?
    4. 我查看了文档和网络,但没有提到这一点。 任何帮助将不胜感激!!

1 个答案:

答案 0 :(得分:0)

  1. 可以假设上述观察始终存在吗?即对于任何已暂停的帐户,该呼叫返回" OAuthException"代码为803,对于任何已停用的帐户,调用返回" GraphMethodException"用代码100?

    我认为您可以检查" OAuthException" - 这意味着由于某些可能的原因您无法访问此用户(在下一个答案中)

  2. 在其他情况下,调用graph.facebook.com/username或graph.facebook.com/id会返回这两个例外吗?

    • 用户已阻止您的应用
    • 用户已通过here
    • 在其隐私设置中停用了所有平台应用
    • 用户已停用其帐户
    • 用户已删除其帐户

  3. 有没有更好的方法(假设上述方法是有效的方法)来实现目标?

    我认为OAuthException - 已经足够了,因为我不认为你想要停用/暂停和其他用户。您只想检查是否可以访问此特定用户。