Skip to content

al-zv/parser

Repository files navigation

Описание:

Используя laravel framework 7+, написать REST API для выдачи списка пользователей из любого внешнего сервиса по API (например vk, facebook, google, итп). Требуется реализовать интеграцию с выбранным сервисом. Запуск импорта пользователей будет производиться через консольную команду. Для работы с бд использовать ORM. Для респонсов использовать https://laravel.com/docs/5.8/eloquent-resources

У пользователя должны быть поля:

Консольные команды, которые нужно реализовать:

  • запуск импорта пользователей из внешнего сервиса

API Методы, которые нужно реализовать:

  • список всех пользователей, которые импортированы из сервиса
  • получение подробной информации о пользователе по ID

Упаковать проект в docker, запушить и описать проект на github. В описании должно быть описано как разворачивать проект.

ВАЖНО: Работу с картинками реализовать через https://github.com/spatie/laravel-medialibrary

Для добавления новых пользователей в базу данных, использовать events и listeners. При получении пользователя из внешнего сервиса, передавать данные пользователя в event, при срабатывании event должен вызываться listener, который добавляет пользователя в базу данных.

Скачать с GitHub

git clone https://github.com/al-zv/parser.git

Открыть папку проекта

cd parser

Запустить проект через Docker (Docker должен быть установлен и запущен)

./vendor/bin/sail up -d

Выполнить миграции

./vendor/bin/sail artisan migrate

Для интеграции с VK нужен сервисный ключ доступа

Получить сервисный ключ доступа

https://dev.vk.com/api/getting-started

<img width="880" alt="Снимок экрана 2022-11-25 в 11 47 29" src="https://user-images.githubusercontent.com/63869857/203917899-fe3cbde0-0271-4934-b910-9a258d86b256.png">

Вставить в файл .env (данный файл в корне проекта) в константу VK_API_ACCESS_TOKEN сервисный ключ доступа

Для начала парсинга ввести в командной строке

./vendor/bin/sail artisan vk:parse {количество_пользователей}

количество_пользователей - число пользователей, информацию о которых нужно получить

Получить всех пользователей

http://localhost/api/users

Получить подробную информацию о пользователе

http://localhost/api/user/1

image

image

Снимок экрана 2022-11-25 в 12 43 52

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages