JuniorJdun
@JuniorJdun

Как осуществить добавление аватара для пользователя?

Занимаюсь проектом для себя и параллельно изучаю express/nodejs, сделал регистрацию простую, name, email, password, теперь обдумал всё и хочу добавить возможность добавления аватарки для пользователей, но пока не совсем понимаю как это реализовать, может делать post запрос на отдельный роут и пересохранять юзера уже с новым ключом? как тогда не затронуть старые name, email, password, а апдейтнуть только автарку, использую mongodb и mongoose для ноды
  • Вопрос задан
  • 643 просмотра
Пригласить эксперта
Ответы на вопрос 1
SagePtr
@SagePtr
Еда - это святое
Разбить задачу на несколько этапов:
1) Принимать загружаемый файл от пользователя.
2) Проверять, что этот файл является изображением и его размер не выше допустимого (если выше - то либо отклонять загрузку и сообщать пользователю об ошибке, либо уменьшать размер и сохранять изменённый файл).
3) Если пункт 2 пройден успешно - сохранить этот загруженный файл на диск.
4) Если пункт 3 пройден успешно - установить для пользователя, который загружал этот файл, дополнительное поле (с именем userpic, к примеру), указывающее на имя файла, который был сохранён в предыдущем пункте. Предыдущее значение этого поля запомнить для последующего шага.
5) Если пункт 4 выполнен успешно - удалить с диска файл с предыдущим аватаром пользователя. Если с ошибкой - то удалить с диска новый загруженный файл, оставить старый.
6) Отписать пользователю о том, что аватар сменён, либо что не сменён, в зависимости от результата.
Ответ написан
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы