instagram basi c display api Код Exchange для токена возвращает 400 OAuthException Неверное приложение платформы - PullRequest
0 голосов
/ 05 марта 2020
У

были некоторые проблемы с этим, хотя я мог поделиться некоторыми данными:

После настройки приложения в Instagram я использовал платформу, указав c идентификатор приложения, а не идентификатор приложения Facebook.

Я перешел к своему приложению Facebook. Панель инструментов Продукты> Instagram> Basi c Отображение и копирование идентификатора приложения Instagram, но я все еще получаю сообщение об ошибке приложения Invalid для платформы.

Вот мой код:

from my_variables import client_id, client_secret, grant_type
import requests


def exchange_for_access_token(code, redirect_uri):
    r = requests.post(
        'https://api.instagram.com/oauth/access_token',
        data={
            'client_id': client_id,
            'client_secret': client_secret,
            'grant_type': grant_type,
            'redirect_uri': redirect_uri,
            'code': code,
        },
    )
    r.raise_for_status()
    return r.json()

1 Ответ

0 голосов
/ 05 марта 2020

Я решил свою проблему после отключения проверки ssl и добавления 'Content-Type': 'application / x- www-form-urlencoded' HEADER.

Вот мой пример кода:

from my_variables import client_id, client_secret, grant_type
import requests


def exchange_for_access_token(code, redirect_uri):
    r = requests.post(
        'https://api.instagram.com/oauth/access_token',
        data={
            'client_id': client_id,
            'client_secret': client_secret,
            'grant_type': grant_type,
            'redirect_uri': redirect_uri,
            'code': code,
        },
        headers={
            'Content-Type': 'application/x-www-form-urlencoded'
        },
        verify=False,
    )
    r.raise_for_status()
    return r.json()

...