Я использую NestJ, связанные с mongoDb. Объекты в монго (и схема в nestjs) имеют следующую структуру {NAME: string, YEAR: number, COVER: string}
.
Estoy usando NestJs conectado con mongoDb. Los objetos que se guardan en mongo tiene la siguiente estructura.
Интерфейс и dto имеет структуру
export class NAME {
readonly NAME: string;
readonly YEAR: number;
readonly COVER: string;
COVER_BASE64: string;
}
export interface NAME extends Document {
readonly NAME: string;
readonly YEAR: number;
readonly COVER: string;
COVER_BASE64: string;
}
В классе обслуживания есть следующая функция, которая добавляет объекты, получающие из Mongo, свойство cover_base64.
async getAlbums(): Promise<Album[]> {
return new Promise((resolve, reject) => {
this.model.find().exec((err, objs) => {
if (err) { reject(err); }
const objres = objs.map(obj => {
const base64 = this.getBase64(obj);
obj.COVER_BASE64 = base64;
return obj;
});
resolve(objsres);
});
});
}
Проблема в том, что объекты, возвращаемые в классе контроллера, не имеют свойства COVER_BASE64. Но, отлаживая сервис, я вижу, что у каждого объекта albumRes есть свойство COVER_BASE64 с правильным значением, но в контроллере отладки это свойство исчезает.
Существует причина, по которой это свойство не должно присутствовать в контроллере, и, например, в почтальоне, http-запрос не получает свойство COVER_BASE64.