Каналы Drupal 7, ошибка разрешения с oauth для instagram (public_content)

Ранее в 2015 году я начал создавать веб-сайт с помощью Drupal 7, который импортирует контент из Instagram (изображения, лайки, комментарии и т. д.) через Drupal Feeds. Все работало finde, но проекты остановились.

Теперь кажется, что мы начинаем это снова, но вдруг импорт больше не работает. Я всегда получаю следующую ошибку:

{"meta": {"error_type": "OAuthPermissionsException", "code": 400, "error_message": "Для этого запроса требуется scope=public_content, но этот токен доступа не авторизован с этой областью. Пользователь должен повторно авторизовать ваш приложение с scope=public_content, которому должны быть предоставлены эти разрешения."}}

Раньше мне не нужно было отправлять «public_content», поэтому я просто отправлял доступ к «базовой» области. И, как я уже сказал, все работало хорошо. Теперь я также вставил область для «public_content» вместе с «basic» в модуль oauth для фидов. Но все еще получаю сообщение об ошибке выше.

Есть намеки на это?

Заранее спасибо и с уважением, Fab


person Fab Ulous    schedule 27.06.2016    source источник
comment
Мне интересно узнать, как вы ее решили.   -  person Bhavin Joshi    schedule 08.07.2016


Ответы (2)


Это связано с обновлением платформы Instagram

Вам нужно будет добавить область public_content, как указал Джоши, а также вам нужно будет обновить свой токен аутентификации на странице настроек.

Тогда вам будет хорошо идти.

person Marameo    schedule 08.07.2016

Вот решение: используйте следующий код в функции instagram_social_feed.module: instagram_social_feed_settings()

 if (variable_get('instagram_social_feed_client_id', '') != '' && variable_get('instagram_social_feed_redirect_uri', '') != '') { 
      $form['authenticate'] = array( 
        '#markup' => l(t('Click here to authenticate via Instagram and create an access token'), 
         'https://api.instagram.com/oauth/authorize/?client_id=' . variable_get('instagram_social_feed_client_id') . '&redirect_uri=' . variable_get('instagram_social_feed_redirect_uri') . '&response_type=code&scope=public_content' 
        ) 
      ); 
    }

Это решит вопрос

person Bhavin Joshi    schedule 08.07.2016