Невозможно загрузить статические локальные файлы (например: svg) без сервера. Если у вас установлен NPM / YARN на вашем компьютере, вы можете настроить простой http-сервер, используя « http-server »
npm install http-server -g
http-server [path] [options]
Или открыть терминал в этой папке проекта и введите «hs». Он автоматически начнет сервер HTTP live.
blockquote>
Я думаю, что это большой вопрос, даже если он немного широк. Существует множество фреймворков, которые строятся поверх Node / Express (например, LoopBack ), чтобы действовать как клей между вашим уровнем данных и вашим уровнем HTTP (REST, API, все, что вы хотите назвать ), решив, что вы хотите на самом деле существовать на данной конечной точке.
Вы также можете оставаться довольно скудным и переопределять метод toJSON
вашего объекта Mongoose (см. этот для примера ). Вероятно, это соответствует вашему примеру с дополнительным классом, который будет соответствовать вашему объекту до его доставки конечному пользователю, но лично я предпочел бы сохранить это в определении моего объекта (файл модели Mongoose).
Полагаю, что в конце дня речь идет о том, какой контроль вам нужен, насколько большой будет проект и каковы его будущие потребности. Для микросервисов вы можете обнаружить, что Express + Mongoose и несколько конкретных стратегий помогут решить ваши проблемы.
Я не совсем уверен, правильно ли получил вопрос, но это то, что похоже на мой объект ответа. [
// GET /api/products/1010
{
"meta": {
"type": "success",
"code": 200,
"message": "Retrieved product number 1010"
},
"data": {
"id": 1010,
"name": "Apple iPhone X",
"description: "Yada yada",
"price": 1000
}
}
Это просто отделяет метаданные и фактические возвращенные данные, чтобы упростить для тех, кто потребляет api для обработки ошибок лучше. Я также изменяю объект JSON, чтобы возвращать только требуемые данные и опускать такие вещи, как поле версии из ответа.