我在沙盒模式下使用Instagram API。我正在尝试使用经过身份验证的访问令牌从Instagram API访问用户喜欢的帖子。此用户是我的应用程序的已接受沙箱用户之一,并且喜欢了一些帖子。
如果我使用相同的令牌调用其他端点,我会获得一些数据,但访问/users/self/media/liked
会返回空数据。
我正在使用此网址:
https://api.instagram.com/v1/users/self/media/liked?access_token={verified access token}
这是我收到的结果:
{"pagination": {}, "meta": {"code": 200}, "data": []}
因为它有200个返回码,所以访问令牌有效。那么为什么我看不到任何喜欢的帖子呢?
答案 0 :(得分:68)
当您的应用在沙盒模式下运行时,与正常行为相比,它受到限制。特别是(引自the API docs for the sandbox):
该API的行为就像Instagram上的唯一用户是您的沙箱用户一样,并且所发布的唯一媒体是每个用户的最后20个。
因此,如果这些帖子是由非沙盒用户制作的,则API无法查看用户喜欢的帖子。
这是一个场景:
假设:
现在,正如Instagram文件所说:这将是黑匣子流。
情况1 :: APP1尝试接受沙箱/非沙盒用户的用户喜欢 - 结果:它获取了他们的数据。原因:对于实时应用,应用可见的用户数是Instagram上可用的用户数。
情境2 :: APP2尝试接受用户喜欢: 对于沙盒用户 - 它将只获取用户注册为此应用程序的沙箱用户的那些数据(如此处所示)。此处不会显示非沙箱用户的任何其他喜欢。 {好像有5个用户存在,如果有任何用户喜欢这5个用户的任何内容,那么它将是可见的。} 对于非沙盒用户 - 用户不可见!
我错过了知名度的最后一部分,这让我得到了一些研究和合作关系。我想我可能还有其他开发人员可能无法理解沙盒用户在文档中的可见性部分。
答案 1 :(得分:17)
如果有人在6月1日之后遇到此问题,那么使用instagram.pixelunion.net
后来我发现了一个更好的工作
services.chrisriversdesign.com/instagram-token/
答案 2 :(得分:3)
简单的解决方案,就像你自己的一个Instagram照片。那样你最近的喜欢"将增加另一个沙盒用户(你)的喜欢,并且不会为空。
答案 3 :(得分:0)
如果还在
{"pagination": {}, "meta": {"code": 200}, "data": []}
用于其他电话,例如
https://api.instagram.com/v1/users/self/media/recent?access_token=732...
请务必转到设置 - >隐私&安全(标签) - >帐户隐私(部分),取消选中'私人帐户。 Instagram最近通过更严格的API更改重新定义了隐私。