无法获得Instagram基本显示API的access_token

问题描述 投票:1回答:1

[我正在尝试从Instagram获取access_token,以将其基本显示API用于新应用程序(只需在网页上显示推文)。

我遵循了以下步骤:https://developers.facebook.com/docs/instagram-basic-display-api/getting-started

但是我被困在第5步:用代码交换令牌

cURL请求始终返回400错误,并显示以下消息:“找不到匹配代码或已经使用了匹配代码”

但是,经过多次测试,我只获得了一次access_token,但是它在大约一个小时后失效。这似乎是非常随机的。我整天都在努力工作……浪费了很多时间。

Instagram基本显示API似乎很新。不久前,我使用了在https://www.instagram.com/developer/网站上创建的应用程序,并且该应用程序曾经可以正常工作。现在此站点显示此消息:

更新:自2019年10月15日起,将停止在Instagram API平台上进行新的客户注册和权限审查,而转为使用Instagram基本显示API。

...带有指向developers.facebook.com的链接。

有人成功获取access_token吗?请帮忙!

谢谢

instagram instagram-api
1个回答
0
投票

我也使用了旧的Instagram API。我必须更改一些内容才能使我的代码在新的API上运行。不确定您使用的是什么,这就是我使用PHP的方式。

$ url ='https://api.instagram.com/oauth/access_token';

$fields = array(

'app_id' => 'YOUR_APP_ID',

'app_secret' => 'YOUR_APP_SECRET_ID',

'grant_type' => 'authorization_code',

'redirect_uri' => 'YOUR_REDIRECT_URL',
'code' => $code
);

$ch = curl_init();

curl_setopt($ch,CURLOPT_URL, $url);
curl_setopt($ch,CURLOPT_POST, true);
curl_setopt($ch,CURLOPT_POSTFIELDS, $fields);
curl_setopt($ch,CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch,CURLOPT_VERIFYPEER, false);

$result = curl_exec($ch);
curl_close($ch);

//get the access token from the string sent from Instagram
$splitString = explode('"access_token":', $result);
$removeRest = explode(',', $splitString[1]);
$withSpace = str_replace('"','', $removeRest[0]);
$access_token = str_replace(' ','', $withSpace);
© www.soinside.com 2019 - 2024. All rights reserved.