1 В избранное 0 Ответвления 0

OSCHINA-MIRROR/Authi_ng-authing.js

Присоединиться к Gitlife
Откройте для себя и примите участие в публичных проектах с открытым исходным кодом с участием более 10 миллионов разработчиков. Приватные репозитории также полностью бесплатны :)
Присоединиться бесплатно
Клонировать/Скачать
Внести вклад в разработку кода
Синхронизировать код
Отмена
Подсказка: Поскольку Git не поддерживает пустые директории, создание директории приведёт к созданию пустого файла .keep.
Loading...
README.md

Authing — Node.js/JavaScript

Authing JavaScript/Node SDK состоит из двух частей: ManagementClient и AuthenticationClient. AuthenticationClient содержит методы регистрации, входа, сброса мобильного номера, электронной почты, изменения информации о профиле пользователя и работает от имени конечного пользователя (End User). Подходит для использования в браузере и серверной среде. ManagementClient подходит для использования на сервере или в доверенной клиентской среде. В целом, все операции, которые можно выполнить в консоли Authing, можно также выполнить с помощью этого SDK.

Установка

С использованием npm:

npm install authing-js-sdk

С использованием yarn:

yarn add authing-js-sdk

Если вы хотите использовать SDK в React Native, сначала запустите в корне проекта RN команду npx rn-nodeify --install "crypto,stream". После этого в корне проекта будет создан файл shim.js. Затем в App.js добавьте в первую строку import './shim.js'.

Использование CDN:

<script src="https://cdn.jsdelivr.net/npm/authing-js-sdk/build/browser/index.min.js"></script>

<script>
  /** Вы можете получить доступ к AuthenticationClient и ManagementClient через глобальную переменную Authing */
  var authing = new Authing.AuthenticationClient({
    appId: 'AUTHING_APP_ID',
  });
</script>

Использование модуля аутентификации

Инициализация

Для инициализации AuthenticationClient необходимо передать appId (идентификатор приложения):

Вы можете найти список своих приложений в разделе «Приложения» в консоли.

import { AuthenticationClient } from 'authing-js-sdk';

const authing = new AuthenticationClient({
  appId: 'YOUR_APP_ID',
});

Полный список параметров:

  • appId: идентификатор приложения Authing (обязательно);
  • accessToken: инициализирует SDK с помощью id_token пользователя (необязательно, вы можете сохранить id_token пользователя в localStorage браузера для реализации функции запоминания логина);
  • timeout: время ожидания запроса в миллисекундах (по умолчанию 10 секунд);
  • onError: функция обработки ошибок, которую можно использовать для глобального перехвата всех исключений, возникающих при запросах Authing Client. Полный список кодов ошибок см. в документации. Определение функции:
(code: number, message: string, data: any) => void
  • host: адрес сервера Authing. Если вы используете общедоступное облако, этот параметр можно игнорировать. Если вы используете частную версию, этот параметр обязателен. Формат: https://authing-api.mydomain.com, без косой черты в конце;
  • preflight: следует ли включать предварительную проверку сетевого состояния (по умолчанию false). Этот параметр подходит для проверки того, не блокирует ли сеть пользователя домен сервера Authing (некоторые корпоративные сети могут блокировать доступ к сторонним веб-сайтам). Если проверка прошла успешно, никаких уведомлений не будет. Если проверка не удалась, будет вызвана переданная функция обработки ошибок. Предварительная проверка может замедлить скорость инициализации SDK, поэтому используйте её с осторожностью;
  • cdnPreflight: следует ли включить предварительную проверку состояния сети CDN (по умолчанию false). Этот параметр подходит для проверки возможности доступа пользователя к CDN Qiniu (некоторые сценарии с прокси-серверами не могут получить доступ). Если проверка успешна, никаких уведомлений не будет. Если проверка неудачна, будет вызвана переданный обработчик ошибок. Выполнение предварительной проверки CDN также может замедлить инициализацию SDK, поэтому рекомендуется использовать её с осторожностью.

Методы использования

После успешного входа в браузер SDK запишет токен пользователя в localStorage. Последующие запросы будут содержать токен.

Пример:

const email = 'test@example.com';
const password = 'passw0rd';
const user = await authing.loginByEmail(email, password); // успешный вход, токен записывается в localStorage

// после входа можно выполнять следующие операции
await authing.updateProfile((nickname: 'Bob'));

Социальный вход

Отправьте запрос на авторизацию социального входа с помощью authenticationClient.social.authorize. Этот метод откроет новое окно и перенаправит вас на страницу авторизации социальной платформы (например, GitHub, WeChat, DingTalk и т. д.). После успешной авторизации платформа автоматически закроет это окно и вызовет функцию обратного вызова onSuccess. Через эту функцию вы можете получить информацию о пользователе.

Пример:

const authenticationClient = new AuthenticationClient({
  appId: 'YOUR_APP_ID',
});

await authenticationClient.social.authorize('github', {
  onSuccess: (user) => {
    console.log(user);
  },
  onError: (code, message) => {},
  // настраиваем положение всплывающего окна
  position: {
    w: 100,
    h: 100,
  },
});

Список поддерживаемых социальных платформ и процесс подключения

В настоящее время Authing поддерживает более 20 социальных платформ по всему миру, таких как WeChat, GitHub, Sign in with Apple, Alipay и другие. Список выглядит следующим образом:

!!!include(common/social-connections-table.md)!!!

Сканирование кода для входа в мини-программу

Сканирование кода входа в мини-программу относится к использованию мини-программы Authing для входа через WeChat. Подробнее.

Используя всего 5 строк кода, вы можете создать полную форму сканирования кода:

authenticationClient.wxqrcode.startScanning('qrcode', {
  onSuccess: (userInfo, ticket) => {
    console.log(userInfo, ticket);
  },
});

Полная информация об использовании и параметрах доступна в документации модуля сканирования QR-кода.

Сканирование кода приложения для входа

Приложение для сканирования кода входа относится к использованию собственного приложения для сканирования кода сайта входа. Подробнее.

Используя 5 строк кода, вы также можете создать полную форму сканирования кода:

authenticationClient.qrcode.startScanning('qrcode', {
  onSuccess: (userInfo, ticket) => {
    console.log(userInfo, ticket);
  },
});

Модули

  • AuthenticationClient: основной модуль;
  • QrCodeAuthenticationClient: сканирование кода для мини-программ и приложений;
  • MfaAuthenticationClient.

Комментарии ( 0 )

Вы можете оставить комментарий после Вход в систему

Введение

Authing SDK для JavaScript. Развернуть Свернуть
MIT
Отмена

Обновления

Пока нет обновлений

Участники

все

Недавние действия

Загрузить больше
Больше нет результатов для загрузки
1
https://api.gitlife.ru/oschina-mirror/Authi_ng-authing.js.git
git@api.gitlife.ru:oschina-mirror/Authi_ng-authing.js.git
oschina-mirror
Authi_ng-authing.js
Authi_ng-authing.js
master