Instagram oauth - код ошибки 400 не найден
Проблема началась два дня назад и затронула около 70% наших пользователей.
Эта ошибка не зависит от IP, библиотек или конфигурации сервера.
Instagram игнорирует мои запросы, Facebook тоже делает.
Я пробовал reset клиентский секрет, менял IP и область, поэтому ничего не помогло.
Другие пользователи сообщают о той же проблеме: https://news.ycombinator.com/item?id=13178789
Возможно, кто-то из Instagram/Facebook читает StackOverflow и может дать некоторые рекомендации или прояснить эту ситуацию?
Ответы
Ответ 1
Я вижу это последовательно. После большого исследования (целый день), похоже, что Instagram изменил свой главный хост API для аутентификации с https://api.instagram.com до https://www.instagram.com и перенаправить с помощью 302.
Если ваш код отправляет POST на api.instagram.com, он перенаправляется, и (я угадываю здесь) Instagram считает это как два запроса.
Я изменил api.instagram.com
в мой код oauth до www.instagram.com
и смог получить токен доступа.
Ответ 2
Похоже, что Instagram api перемещает api.instagram.com
в www.instagram.com
с перенаправлением 302.
Если вы используете omniauth-instagram
gem, вы можете использовать это исправление:
#config/initializers/omniauth_instagram_api_path.rb
module OmniAuth
module Strategies
class Instagram
option :client_options, {
:site => 'https://www.instagram.com',
:authorize_url => 'https://www.instagram.com/oauth/authorize',
:token_url => 'https://www.instagram.com/oauth/access_token'
}
end
end
end
Цель - заменить api.instagram.com
на www.instagram.com
.
Мне удалось создать мое приложение для создания и производства.
Ответ 3
Также есть эта проблема. Если вы входите в систему через Интернет в Instagram, а затем попробуйте поток auth, кажется, это работа.