Куда сохранить загруженный аватар

Не могу найти ответа на свой вопрос.

Я создаю приложение React с использованием NodeJS и CRA, и мне нужно реализовать систему загрузки аватаров. Но я не уверен, где сохранить загруженное изображение. Мой сервер Node обслуживает статическую папку «public», поэтому мне нужно сохранять изображения в / public / avatar? Но каждый раз, когда я буду обновлять приложение и заново создавать клиентскую папку, это будет перезаписывать общую папку и удалять все предыдущие загруженные аватары? Я прав ? Так что ты мне предлагаешь?

Спасибо,

Стоит ли изучать PHP в 2026-2027 годах?
Стоит ли изучать PHP в 2026-2027 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Приемы CSS-макетирования - floats и Flexbox
Приемы CSS-макетирования - floats и Flexbox
Здравствуйте, друзья-студенты! Готовы совершенствовать свои навыки веб-дизайна? Сегодня в нашем путешествии мы рассмотрим приемы CSS-верстки - в...
Тестирование функциональных ngrx-эффектов в Angular 16 с помощью Jest
В системе управления состояниями ngrx, совместимой с Angular 16, появились функциональные эффекты. Это здорово и делает код определенно легче для...
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Пользовательский скаляр GraphQL
Пользовательский скаляр GraphQL
Листовые узлы системы типов GraphQL называются скалярами. Достигнув скалярного типа, невозможно спуститься дальше по иерархии типов. Скалярный тип...
1
0
1 289
2

Ответы 2

Есть несколько мест, где вы можете хранить загруженные вами изображения, хотя хранить их в общедоступном месте, вероятно, не лучшее место.

В случае, когда вы использовали базу данных, такую ​​как MongoDB, вы могли сохранить изображение внутри Mongo с помощью gridfs и обслуживать данные с использованием маршрута при получении информации о пользователе. Точно так же вы также можете сохранить в базе данных путь к файлу и также вернуть путь или данные файла из маршрута.

Однако будьте осторожны с пользовательскими загрузками, поскольку произвольное разрешение загруженных данных может привести к неожиданным результатам, если вы не будете осторожны.

Спасибо за ответ CoolestNerdlll. Да, я использую MongoDB для сохранения некоторых данных, но в случае, если я реализую чат, в котором отображается аватар, я не могу делать запрос на получение всех аватаров каждый раз, когда говорит новый пользователь, я думаю, что это не очень хорошо и действенный способ?

LaSmala 03.12.2018 15:14

Если вы собираетесь показать имя пользователя, подробности или что-нибудь о пользователе, запрос / ответ, который возвращает эту информацию, может очень легко также включать данные изображения или путь к изображению.

CoolestNerdIII 03.12.2018 15:17

Хм, отлично, теперь я вижу, как это реализовать. Большое спасибо. Хорошего дня

LaSmala 03.12.2018 15:19

Надеюсь, это, по крайней мере, укажет вам в правильном направлении. Вы также можете посмотреть кеширование изображения / данных, чтобы ограничить запросы.

CoolestNerdIII 03.12.2018 15:20

Да, я постараюсь получить больше информации об этом. Я думаю, что есть какой-то пакет, который предлагает эту функцию. Может быть, мне нужно проверить загруженное изображение, если за ним нет вредоносных программ?

LaSmala 03.12.2018 15:34

Вы также можете использовать Gravatar (https://gravatar.com/). Пользователь может выбрать аватар, назначенный хешу его почтового адреса, или использовать автоматически сгенерированный по умолчанию.

Однако с помощью этого решения вы не можете позволить пользователям менять свой аватар прямо на вашем сайте.

Он широко используется на известных веб-сайтах, таких как StackOverflow.

Да, я читал об их услугах, но я не особо хороший поклонник. Я думаю, это слишком ненавязчиво

LaSmala 03.12.2018 15:40

Другие вопросы по теме