Недопустимый Redirect_uri Для входа в Instagram с использованием реагировать родной - PullRequest
6 голосов
/ 24 февраля 2020

Я использую react-native-instagram-login для React Native.

Вот мой код

<InstagramLogin
  ref={instagramLoginRef}
  appId='***********'
  appSecret='*******************'
  scopes={['user_profile', 'user_media']}
  onLoginSuccess={(data) => console.log("Success")}
  onLoginFailure={(data) => console.log("Fail " +  JSON.stringify(data))}
/>

Я получаю следующую ошибку

{"error_type": "OAuthException", "code": 400, "error_message": "Invalid redirect_uri"}

В консоли разработчика Instagram, что я должен добавить как Uri перенаправления, так как это не веб-сайт, а собственное приложение реакции.

1 Ответ

4 голосов
/ 27 февраля 2020

Из Instagram Basi c API отображения :

Действительные URI перенаправления OAuth

Введите URL своего веб-сайта. Обычно это будет выделенный URI, который может захватывать параметры строки запроса на перенаправление, но для этого урока будет хорошо работать URL-адрес вашего веб-сайта.

Например: https://socialsizzle.heroku.com/auth/

После ввода URL-адреса сохраните изменения и снова проверьте URL; возможно, мы добавили конечный слэй sh в зависимости от вашей структуры URL. Скопируйте полный URL-адрес куда-нибудь, так как он понадобится вам на более поздних этапах, чтобы получить коды авторизации и токены доступа.

В этом примере кода мы видим redirectUrl='https://www.google.com', что означает что вы можете установить все, что вы хотите. Это полезно для сбора статистических данных для входа в систему и создания конечной точки для ведения журнала.

<InstagramLogin
  ref={instagramLoginRef}
  clientId="931cca1d0c154de3aafd83300ff8b288"
  redirectUrl="https://google.com"
  scopes={['basic']}
  onLoginSuccess={token => this.setState({ token })}
  onLoginFailure={data => this.setState({ failure: data })}
/>

Также посмотрите на эту проблему "нет ответа после завершения" , в которой говорится, что redirectUrl должен начинаться с www из-за ошибки в react-native-webview. Также в этом выпуске вы увидите, что пример кода пользователя имеет URL-адрес конечной точки функции Firebase redirectUrl="https://us-central1-xxx.cloudfunctions.net/url_get&response_type=token", поэтому он использует Firebase для регистрации / отзыва запросов на вход.

Наконец, в Консоль разработчика Facebook , вы просто вводите действительные URI перенаправления OAuth :

Facebook Developer Console

, что означает, что вы вводите, какие URL вы принимаете для API для перенаправления; это больше похоже на механизм безопасности, но вы должны ввести туда URL перенаправления, иначе API не будет работать.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...