如何通过Instagram Graph API获取话题下帖子的用户名?
解决Instagram Graph API获取帖子用户名的问题
先处理你遇到的ig-media调用错误(错误码100/子码33)
这个错误的核心原因集中在这几点,逐个排查:
- 权限或令牌类型不对:必须使用Instagram业务账号绑定的访问令牌,且令牌要包含
instagram_basic权限,同时应用得通过Meta的应用审核(针对访问非自有账号内容的场景)。个人用户令牌根本没法访问第三方公开帖子的详情。 - 媒体对象不可访问:如果目标帖子是私密账号发的,或者账号设了访问限制,API直接返回这个错误,这种情况拿不到该帖子的任何信息。
- 调用格式有误:调用ig-media时必须明确指定
fields=username,不能只请求默认字段,否则就算权限没问题也拿不到想要的内容。
更高效的方案:直接在ig-hashtag/recent-media里拿用户名
完全没必要二次调用ig-media,只要在请求ig-hashtag/recent-media时,通过fields参数直接要求返回用户名字段就行。示例请求格式:
GET /{ig-hashtag-id}/recent-media?fields=id,username,media_type,media_url&access_token={access-token}
返回结果里会直接带每篇帖子的username字段,省了二次请求的麻烦,还能避开权限问题。
额外注意事项
- 如果是访问自己业务账号关联的话题内容,确保用的是业务账号的令牌,不是个人用户令牌。
- 要是还是拿不到,去Meta应用后台查权限状态,确认
instagram_basic权限已经获批,且令牌没过期。 - 私密帖子不管怎么操作都没法通过API获取,这是Instagram的隐私规则限制,没法绕开。
内容的提问来源于stack exchange,提问作者ONLAEG
相关产品推荐
相关产品推荐

