Instagram API 有没有办法知道用户是否屏蔽了已登录的用户?
Instagram API Is there a way of knowing if a user blocked logged user?
我正在查看 Instagram api 上的所有端点:https://instagram.com/developer/endpoints/#
获得授权令牌后,我可以进行所有操作:like/change relationship/view 用户详细信息...
不过,我看到 android 上的一些应用程序有这个额外的功能:查看谁阻止了当前登录的用户。 API 上没有提到这个,当我尝试查询用户的详细信息时,我得到的不是显示 is_private/blocked_you,而是:
{
"error_type": "APINotAllowedError",
"code": 400,
"error_message": "you cannot view this resource"
}
这是有道理的,因为用户已被阻止,不应返回任何信息。但在这种情况下,其他应用程序如何获取此 "User has blocked you" 信息?
我可能是错的,但如果 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"
}
}
Relationships are expressed using the following terms:
outgoing_status: Your relationship to the user. Can be "follows",
"requested", "none". incoming_status: A user's relationship to you.
Can be "followed_by", "requested_by", "blocked_by_you", "none".
这意味着你找不到屏蔽你的用户,但你可以找到被你屏蔽的用户。从这个角度来看,如果您将所有用户令牌都存储在自己的数据库中,则可以编写简单的代码,以使用此令牌的用户身份登录,并检查与数据库中其他用户的关系。您可以将结果保存到自己的数据库中,使用它,并进行更新,比如说,任何 X 天、数周...
请注意,只有当您使用 Instagram 的 OAuth API 将用户登录到您自己的服务时,这才会起作用。是的,这是一个非常慢的方法。
我正在查看 Instagram api 上的所有端点:https://instagram.com/developer/endpoints/#
获得授权令牌后,我可以进行所有操作:like/change relationship/view 用户详细信息...
不过,我看到 android 上的一些应用程序有这个额外的功能:查看谁阻止了当前登录的用户。 API 上没有提到这个,当我尝试查询用户的详细信息时,我得到的不是显示 is_private/blocked_you,而是:
{
"error_type": "APINotAllowedError",
"code": 400,
"error_message": "you cannot view this resource"
}
这是有道理的,因为用户已被阻止,不应返回任何信息。但在这种情况下,其他应用程序如何获取此 "User has blocked you" 信息?
我可能是错的,但如果 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"
}
}
Relationships are expressed using the following terms:
outgoing_status: Your relationship to the user. Can be "follows", "requested", "none". incoming_status: A user's relationship to you. Can be "followed_by", "requested_by", "blocked_by_you", "none".
这意味着你找不到屏蔽你的用户,但你可以找到被你屏蔽的用户。从这个角度来看,如果您将所有用户令牌都存储在自己的数据库中,则可以编写简单的代码,以使用此令牌的用户身份登录,并检查与数据库中其他用户的关系。您可以将结果保存到自己的数据库中,使用它,并进行更新,比如说,任何 X 天、数周...
请注意,只有当您使用 Instagram 的 OAuth API 将用户登录到您自己的服务时,这才会起作用。是的,这是一个非常慢的方法。