Создайте свое первое веб-приложение FaceAuth с помощью FaceIO

Самая важная часть работы разработчика — это постоянное обучение. Важно быть в курсе последних технологий. В последнее время искусственный интеллект (AI) стремительно развивается, и ему суждено произвести революцию.

Одной из последних разработок в этой области является FaceAuth. В настоящее время стало намного проще бросить один взгляд на телефон и открыть его за считанные миллисекунды. Сегодня мы узнаем, как реализовать это в webapp.

Мы будем использовать API, предоставляемый FaceIO, чтобы реализовать FaceAuth в нашем webapp!

Почему FaceIO?

После долгих исследований я решил выбрать FaceIO. Он предоставляет простой API и может быть интегрирован в течение нескольких минут. Он предоставляет библиотеку fio.js, которая использует простые вызовы и методы для быстрой настройки аутентификации для вашей платформы. Самое лучшее — это то, что она дает исключительно высокие результаты без необходимости использования превосходных камер или датчиков. Кроме того, вы можете легко интегрировать свой webapp с любым фреймворком или технологией, с которой вы любите работать. (например, React, Vue, Python и другие).

Давайте рассмотрим несколько причин, почему мне понравился FaceIO:

  1. Легкость доступа: FaceAuth дает вам легкий доступ к вашим любимым приложениям. Я ненавижу заходить в менеджер паролей и искать пароль каждый раз, когда я его не помню. Зачем обращаться к менеджеру паролей, если я могу пройти аутентификацию, просто взглянув на экран.
  2. Пользовательский опыт: Как разработчик, наша главная задача — облегчить жизнь всему миру. С FaceAuth новый пользователь может практически зарегистрироваться в течение нескольких секунд, а также избавиться от необходимости запоминать пароли.
  3. Низкая стоимость : Разблокировка по лицу стала обычной функцией в мобильных устройствах, но они оснащены превосходными камерами и датчиками. С помощью искусственного интеллекта не требуется суперсовременная технология для реализации этой функции в таких устройствах, как ноутбуки или веб-камеры низкого класса.
  4. Легкая библиотека: добавить эти функции очень просто. Например, мы можем настроить FaceAuth с помощью fioJs (библиотека FaceIO) и поддерживать его в рабочем состоянии с помощью нескольких строк кода.

Учебник

Сегодня мы будем использовать Vanilla HTML и JS для реализации FaceAuth, создав очень простой webapp.

Во-первых, вам нужно создать свой публичный ключ API FaceIO.

Шаги для создания API-ключа

  1. Во-первых, зайдите в консоль.
  2. Создайте новое приложение FaceIO.
  3. Следуйте указаниям мастера создания приложения FaceIO. Мастер создания приложения автоматизирует и упростит процесс до нескольких кликов. Вам нужно будет выбрать название приложения, выбрать механизм распознавания лиц, регион облачного хранилища из предложенных вариантов, просмотреть параметры безопасности, настроить макет виджета и многое другое. Теперь вам нужно сохранить свой открытый ключ API.

Интеграция библиотеки

Мы будем следовать руководству по интеграции, предоставленному FaceIO. Вы можете найти его здесь.

Поскольку я использую VS Code в качестве IDE, я буду использовать расширение Live Server для локального размещения моего сайта.

Для запуска нашего проекта мы будем использовать приведенный ниже шаблон.

<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="UTF-8" />
    <meta http-equiv="X-UA-Compatible" content="IE=edge" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <title>Document</title>
  </head>
  <body></body>
</html>
Вход в полноэкранный режим Выход из полноэкранного режима

Сейчас мы создадим простой пользовательский интерфейс. Мы будем использовать шаблон с одним заголовком и двумя кнопками для настройки этого базового проекта. Первая кнопка будет использоваться для регистрации нового пользователя, а вторая — для аутентификации. Мы также добавим несколько CSS для центрирования содержимого и придания ему единообразного вида на всей веб-странице.

CSS

<style>
      .container {
        text-align: center;
      }
      button {
        padding: 10px 20px;
        font-size: 18px;
      }
</style>
Вход в полноэкранный режим Выход из полноэкранного режима

HTML

<div class="container">
      <h1>FaceAuth WebApp</h1>
      <br />
      <button title="Register a new user on the FaceIO Application">
        Register User
      </button>
      <button
        title="Authenticates a user already registered on the running FaceIO applicaiton"
      >
        Authenticate User
      </button>
    </div>
Вход в полноэкранный режим Выход из полноэкранного режима

Теперь нам нужно импортировать библиотеку fio.js, предоставленную FaceIO. Это мощный движок, который позволяет нам реализовать FaceAuth за считанные минуты. Подробнее о создании объекта fio вы можете узнать здесь.

<div id="faceio-modal"></div>
<script src="https://cdn.faceio.net/fio.js"></script>
Вход в полноэкранный режим Выход из полноэкранного режима

Теперь все готово, по крайней мере, визуально. Теперь, чтобы сделать кнопки реально работающими и реализовать регистрацию и аутентификацию, мы должны сначала создать объект FaceIO.

<script type="text/javascript">
    const faceio = new faceIO("app-public-id"); // enter your public id
</script>
Вход в полноэкранный режим Выход из полноэкранного режима

Теперь мы создадим две функции и свяжем их с кнопками.

Первой функцией будет функция register, эта функция будет реализована для регистрации новых пользователей. Для этого мы будем использовать метод enroll, предоставляемый fio.

function registerUser() {
        faceio
          .enroll({
            locale: "auto", // Default user locale
            userConsent: true, // True if user consent collected
            payload: {
              id: 13795, // dummy id used for demo
              email: "example@example.com", // dummy email for demo
            },
          })
          .then((userInfo) => {
            // User Successfully Enrolled!
            console.log(userInfo);

          })
          .catch((errCode) => {
            console.log(errCode);
          });
      }
Вход в полноэкранный режим Выйти из полноэкранного режима

Мы можем передавать множество параметров в наших параметрах. Подробнее о параметрах здесь.

  1. Полезная нагрузка: Это основная информация, которую вы хотите передать. Сюда входит такая информация, как email, id, имя и т.д.
  2. locale : Это определяет язык для всплывающего окна регистрации/входа в систему. По умолчанию он имеет значение auto, которое определяет язык за вас. Но вы можете присвоить значение самостоятельно, если вам это необходимо.
  3. Согласие пользователя FaceIO обеспечивает соблюдение пользователями своих политик. Поэтому вы можете разрешить принять их условия и услуги при регистрации в fio, если это не указано явно на вашем сайте.
  4. enrollIntroTimeout : Время в секундах, в течение которого пользователь должен зарегистрироваться или записаться.

Теперь нам нужно связать эту функцию с кнопкой регистрации.

onclick="registerUser()"
Вход в полноэкранный режим Выйти из полноэкранного режима

Второй функцией будет функция authenticate, эта функция будет реализована для аутентификации существующих пользователей. Для этого мы будем использовать метод authenticate, предоставляемый библиотекой fio.

      function authenticateUser() {
        faceio
          .authenticate({
            locale: "auto", // Default user locale
          })
          .then((userData) => {
            console.log("Success, user recognized");
            // faceio generates unique faceid for each user
            console.log("Linked facial Id: " + userData.facialId);
            console.log(
              "Associated Payload: " + JSON.stringify(userData.payload)
            );
          })
          .catch((errCode) => {
            console.log(errCode);
          });
      }
Вход в полноэкранный режим Выйти из полноэкранного режима

Теперь нам нужно связать эту функцию с кнопкой аутентификации.

onclick="authenticateUser()"
Вход в полноэкранный режим Выход из полноэкранного режима

И мы закончили создание нашего первого веб-приложения FaceAuth с помощью библиотеки fiojs от FaceIO. Не стесняйтесь ознакомиться с HTML-шаблоном, предоставленным FaceIO, чтобы начать свою интеграцию.

Некоторые ссылки для начала работы

Если вы хотите и дальше строить и создавать что-то интересное из проекта, который мы сделали, вы можете ознакомиться с приведенными ниже ссылками!

Учебник по началу работы: Изучите основы. Ваши первые шаги с FACEIO.
Руководство по интеграции: Узнайте, как внедрить fio.js, библиотеку распознавания лиц на вашем сайте, прежде чем внедрять аутентификацию по лицу для вашей аудитории.
Центр разработчика: Содержит примеры кода, документацию, каналы поддержки и все ресурсы, необходимые для внедрения FACEIO на вашем сайте.
Часто задаваемые вопросы: Получите ответы на все общие вопросы в начале работы.
Центр доверия: Узнайте, как FaceIO обрабатывает ваши данные безопасно и в соответствии с требованиями конфиденциальности и законодательства.
Реализация аутентификации по лицу в вашем приложении на Vue.js: Узнайте, как реализовать faceIO с помощью такого фреймворка, как VueJS.

Заключение

Мы успешно реализовали FaceAuth на нашем простом веб-приложении. Поскольку потребители отдают предпочтение удобству и безопасности, для нас, разработчиков, очень важно быть в курсе потребностей потребителей и технологических достижений. Поскольку искусственный интеллект делает большой скачок, прыжок вместе с ним — лучший вариант. Если у вас возникли вопросы или вы почерпнули что-то интересное из сегодняшней дискуссии, вы можете связаться со мной в twitter. В следующей части мы продолжим работу над нашим веб-приложением и изучим дополнительные возможности.

Оцените статью
devanswers.ru
Добавить комментарий