如何使用Instagram的API

时间:2016-01-30 12:12:04

标签: php node.js instagram instagram-api

我一直在尝试检索在 Instagram 上评论过图片的用户。我面临的问题是您需要在api端点中使用图像的media ID。我正在使用此代码获取图片的media ID

$api = file_get_contents("http://api.instagram.com/oembed?url=https://www.instagram.com/p/BBHOUQyuS3T/?taken-by=kimkardashian");
$apiObj = json_decode($api,true);
$media_id = $apiObj['media_id'];
print_r($media_id);

它为media ID 1172969193024859603_18428658提供了$api = file_get_contents("http://api.instagram.com/v1/media/".$media_id."/comments?access_token=".$access_token);

当我将此输入到我的api请求中时:

access_token

使用我的特定media ID,我收到 400错误代码。当我直接进入页面网址时,它会说:

  

媒体ID无效。

以前有其他人有这个问题吗?如果是这样,你是如何解决的?

另一个令人费解的部分是,在浏览Stackoverflow一段时间之后,我找到了几种方法将图片的短代码翻译成nodejs

其中一个是media ID模块here,它为1172969193024859603的图像提供validation,因此与原始图像一样,但在下划线后面没有位。两个ID都给了我同样的错误。

我已经在这几个小时了,这让我发疯了!请帮忙。

1 个答案:

答案 0 :(得分:0)

如果您尝试访问不在沙盒授权用户列表中的用户媒体,则会出现沙箱模式中的预期响应。

https://www.instagram.com/developer/sandbox/

  

数据仅限沙盒用户和20个最新媒体   每个沙箱用户

添加您想要访问沙盒用户的照片的用户,然后您将获得有效的媒体API响应

media_id x := int(3.6)1172969193024859603_18428658与下划线后的部分相同,即媒体所有者的1172969193024859603,两者均适用于user_id