"Invalid platform app" 使用 Instagram 基本显示时出错 API

"Invalid platform app" error using Instagram Basic Display API

我正在尝试使用 Instagram 基本显示 API 但是当我 post 获取访问令牌的授权代码时,我不断收到以下错误

{"error_type": "OAuthException", "code": 400, "error_message": "Invalid platform app"}

我正在执行此处提到的所有步骤 -> https://developers.facebook.com/docs/instagram-basic-display-api/getting-started 是的,我正在使用 Instagram 应用程序 ID,它的客户端密码位于 Products -> Instagram -> Display 中,接下来是 URL我正在发送请求

"https://api.instagram.com/oauth/access_token?client_id=".$app_id."&client_secret=".$app_secret."&grant_type=authorization_code&redirect_uri=".$redirecturi."&code=".$code,

交换代码时需要使用 POST 请求。

从您的 url 的外观来看,您已将其形成为 GET 请求,所有参数都作为 url 的一部分而不是表单数据。尝试将参数作为 post 正文的一部分而不是

发送

工作示例代码:

$curl = curl_init();
curl_setopt_array($curl, array(
  CURLOPT_URL => "https://api.instagram.com/oauth/access_token",
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_ENCODING => "",
  CURLOPT_MAXREDIRS => 10,
  CURLOPT_TIMEOUT => 0,
  CURLOPT_FOLLOWLOCATION => true,
  CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
  CURLOPT_CUSTOMREQUEST => "POST",
  CURLOPT_POSTFIELDS => array('client_id' => '{client_id}','client_secret' => '{client_secret}','grant_type' => 'authorization_code','redirect_uri' => '{redirect_uri}','code' => '{code}'),
  CURLOPT_HTTPHEADER => array(
    "Content-Type: multipart/form-data; boundary=--------------------------780367731654051340650991"
  ),
));
$response = curl_exec($curl);
curl_close($curl);
print_r($response);

如果您使用的是 Postman,请记住这是一个 POST 请求。使用表单数据

我 运行 遇到了同样的问题。问题是我使用的是 Facebook App ID 和 App Secret 而不是 Instagram App ID & App Secret。您必须转到 Facebook 开发者网站上的“Instagram 基本显示”部分,然后向下滚动,直到找到 Instagram 应用程序 ID 和密码。

由于以下原因,我收到此错误。

如果App Id 和Secret Key 为空则出现此类错误。所以我们可以首先测试该应用程序 ID 和密钥必须是正确的。我知道这是很正常的事情,我们很容易注意到。但是有的时候,一些简单的事情我们是注意不到的。