Instagram API有没有办法知道用户是否阻止了登录用户?

时间:2015-03-27 15:42:15

标签: android instagram instagram-api

我正在浏览Instagram的所有端点api:https://instagram.com/developer/endpoints/#

获得authrization标记后,我可以执行所有操作:例如/ change relationship / view user detais ...

但是,我发现Android上的某些应用程序具有以下额外功能:查看谁阻止了当前登录的用户。关于API没有提及,当我尝试查询用户的详细信息时,而不是显示is_private / blocked_you我获得的是:

{
        "error_type": "APINotAllowedError",
        "code": 400,
        "error_message": "you cannot view this resource"
    }

这是有道理的,因为用户被阻止了,不应该返回任何信息。但在这种情况下,其他应用程序如何得到这个"用户阻止了你"信息?

1 个答案:

答案 0 :(得分:1)

我可能错了,但如果Instagram的API像Facebook一样工作,我可以考虑这个想法。

您有API可以找到自己与用户的关系。

https://api.instagram.com/v1/users/{user-id}/relationship?

access_token=ACCESS-TOKEN
{
    "meta": {
        "code": 200
    }, 
    "data": {
        "outgoing_status": "none", 
        "incoming_status": "requested_by"
    }
}
  

使用以下术语表达关系:

     

outgoing_status:您与用户的关系。可以“跟随”,   “请求”,“无”。 incoming_status:用户与您的关系。   可以是“follow_by”,“requested_by”,“blocked_by_you”,“none”。

这意味着您找不到阻止您的用户,但您可以找到被您阻止的用户。从这个角度来看,如果您将所有用户令牌存储在您自己的数据库中,您可以编写简单的代码,以使用此令牌的用户身份登录,并检查与数据库中其他用户的关系。结果您可以保存到自己的数据库,使用它,并进行更新,比如说,任何X天,周......

请注意,仅当您使用Instagram的OAuth API将用户登录到您自己的服务时,此功能才有效。是的,这是一种非常缓慢的方法。