Обьясните логику работы auth на примере nuxt auth?

Как подключить и отправить запросы на сервер - разобрался. Не могу понять логику, в конфиге есть 3 точки запроса :

auth: {
    strategies: {
      lendpoints: {
      login: { url: '/api/login/', method: 'post', propertyName: 'token' },
      logout: { url: '/api/auth/logout', method: 'post' },
     user: { url: '/api/user/', method: 'get', propertyName: 'user' }
     },
 
      }
    }
  },

Я отправляю запрос
return this.$auth
            .loginWith('local', 
            {
             data:   qs.stringify({
                login: 'admin',
                password: '123456'
            })
            }
            ).then(() => {
          alert('Logged In!')
        })
,
с параметрами login и password, на сервере нахожу юзера. На этом я зашел в тупик. Мне непонятно:

для чего запрос /api/login/ и что он должен возвращать.
что должен возвращать запрос /api/user/
как в итоге мне проверить например имя пользователя и сам факт авторизации пользователя.
  • Вопрос задан
  • 4129 просмотров
Решения вопроса 1
  1. Запрос /api/login/ ожидает в ответ токен пользователя. Как из ответа выбрать токен - указывается в настроках auth. Т.е. сервер получает логин и пароль, проверяет. Если они верны - выбирает из базы токен этого пользователя и возвращает его.
  2. После получения nuxt'ом токена он сохраняется в localStorage и, вроде, дублируется в кукис
  3. Этот токен потом надо при каждом запросе добавлять в заголовок и проверять на сервере
  4. /api/user/ запрашивается после токена и в ответ надо дать профиль пользователя
  5. Если профиль получен, он сохраняется в store и для пользователя устанавливается переменная loggedIn на true
  6. Всё, пользователь залогинен
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы