iamnikas
@iamnikas
Веб-архитектор, UI-дизайнер, веб-разработчик

Как правильно хранить аватарки пользователей на node.js?

С помощью express была реализована система загрузки аватарки. Куда дальше файл аватарки нужно пропихивать ? В папку на бэкенде?
А как этот файл отдавать пользователю если он его запрашивает в своём профиле ?
  • Вопрос задан
  • 398 просмотров
Пригласить эксперта
Ответы на вопрос 1
@alexalexes
https://habrahabr.ru/post/37686/
Тут для PHP, но для любого backend концепция от этого не поменяется.
1) Перенаправляем все ссылки для получения картинок на скрипт для проверки прав доступа.
2) Проверяем права доступа пользователя по сессионным данным;
3) Все ОК, сессия пользователя жива, файл существует, пользователь является владельцем файла или каким-то образом относится к нему (хотя бы для чтения) - передаем команду nginx серверу отдать файл из защищенного каталога.
4) Не ОК, отдаем пользователю 404.
3.1) Нет nginx ? Читаем файл серверным скриптом (лучше небольшими порциями, для экономии оперативной памяти сервера), отдаем пользователю данные с соответствующим mime-тайпом. На стороне клиента отданные данные прорисуются в img теге или в background-e DOM-элемента, не принципиально, каким образом прилетели бинарные ресурсы от сервера.
Ответ написан
Комментировать
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы
Искра Екатеринбург
от 80 000 до 100 000 ₽
Art gorka Санкт-Петербург
от 60 000 ₽
от 40 000 до 60 000 ₽
19 апр. 2024, в 20:43
20000 руб./за проект
19 апр. 2024, в 20:11
500 руб./за проект