Skip to main content

Авторизация через социальные сети в ReactNative

Для реализации авторизации через социальные сети в ReactNative можно использовать компонент WebView для отображения формы входа пользователю и получение результата авторизации по ссылкам редиректа.


export const AuthScreen = () => {

  const key = "{УНИКАЛЬНЫЙ КЛЮЧ АВТОРИЗАЦИИ}";
  const soc = "vk"; //Ключ соц. сети

  const onNavigationStateChange = (e) => {
  
    
    if (e.url.indexOf('callback/error') > -1) {
      //Ошибка авторизации
    }
    if (e.url.indexOf('callback/success') > -1) {
     //Авторизация прошла успешно
    //Логика работы с key для получения данных локально
    //Или запрос на сервер
    }
  };


  const initUrl = `https://api.auth4app.com/auth?soc=${soc}&key=${key}`;

  return (
    <>
      <WebView
        source={{
          uri: initUrl,
        }}
        style={{flex: 1}}
        onNavigationStateChange={onNavigationStateChange}
      />
    </>
  );
}