# Неделя #4: Авторизация

# Задачи на неделю

  1. Реализовать авторизацию
  2. Запросить данные использующие токен
  3. Вынести данные в компоненты

# План недели

  • Лайкнуть* не менее 10 репозиториев в GitHub (найти интересные репозитории можно на вкладке Explore -> Trendings, и отфильтровать по языку программирования)
  • Посмотреть видео-курс Авторизация (23м)
  • Зарегистрировать приложение OAuth в GitHub
  • Реализовать авторизацию, сохранение токена и защиту роутов
  • Получить данные о своем пользователе и вывести в компонент юзера в хедере
  • Получить лайкнутые репозитории для своего пользователя и вывести в компоненты главной страницы
  • Реализовать получение ишьюз (issues)** для репозитория ( + сверстать компонент прелоадера)
  • Реализовать функционал кнопки подписки (лайка) для репозитория

*под "лайком" имеется ввиду клик на кнопку Star на странице репозитория.

**список багов/предложений для репозитория от пользователей

# Адреса API

Назначние Адрес Метод
Данные пользователя /user GET
Лайки пользователя /user/starred GET
Ишьюз для репозитория /repos/${owner}/${repo}/issues GET
Лакнуть репозиторий /user/starred/${owner}/${repo} PUT
Разлайкать репозиторий /user/starred/${owner}/${repo} DELETE
  • ${owner} - владелец репозитория
  • ${repo} - название репозитория

# Обмен кода на access_token

  • Адрес: https://webdev-api.loftschool.com/github
  • Метод: POST
  • Параметры:
    1. clientId
    2. clientSecret
    3. code - код который вернет вам github после авторизиции пользователя

# Функционирование блока с ишьюз