如何使用oEmbed读取API嵌入公开Instagram动态并获取用户所有帖子?
Instagram接口调用报错修复及批量拉帖实现方案
1 oembed_page接口报错原因
你调用的oembed_page为Facebook公共主页专属oembed接口,不支持传入Instagram链接,因此返回(#100) Invalid parameter参数错误。
若仅需单条Instagram公开内容的嵌入代码,可替换为Instagram专属oembed接口调用,示例格式如下:https://graph.facebook.com/v18.0/instagram_oembed?url=https://www.instagram.com/p/[单条帖子ID]/&access_token=[你的应用访问令牌]
该接口仅支持单条内容查询,无法满足批量拉取用户全部帖子的需求。
2 批量获取授权用户全部Instagram帖子的实现方案
结合你持有用户授权、用户登录你方应用的场景,根据账号类型选择对应接口即可实现需求:
2.1 普通个人Instagram账号
使用Instagram Basic Display API实现,前置要求:
- 你的FB应用已完成
instagram_basic权限审核 - 用户登录时完成OAuth授权,获取该用户的专属访问令牌
授权完成后调用/me/media端点拉取用户所有公开帖子,可按需指定返回字段(帖子ID、文案、素材类型、素材地址、发布时间等),请求示例:https://graph.facebook.com/v18.0/me/media?fields=id,caption,media_type,media_url,timestamp&access_token=[用户授权访问令牌]
2.2 商业/创作者Instagram账号
使用Instagram Graph API实现,前置要求:
- 你的FB应用已完成
pages_show_list、instagram_basic权限审核 - 用户授权绑定对应的Facebook公共主页
调用对应Instagram商业账号ID的/media端点拉取所有帖子,请求示例:https://graph.facebook.com/v18.0/[Instagram商业账号ID]/media?fields=id,caption,media_type,media_url,timestamp&access_token=[用户授权访问令牌]
2.3 全量拉取说明
接口默认分页返回内容,如需拉取全部历史帖子,可按返回结果中paging字段的下一页地址继续请求,直到无下一页标识即可获取全部帖子内容。
内容的提问来源于stack exchange,提问作者eliza_chris
相关产品推荐
相关产品推荐

