Я пытаюсь написать несколько спокойных веб-API, у меня есть коллекция, называемая сообществом, и в ней около 10 полей. Но в моем вызове GetCommunityAPI я хочу передать только необходимую информацию на мобильное устройство.
Я ссылался на этот пример блога , это предложило следующий запрос MongoDB
$db->users->find({}, {username => 1});
Я написал свой монгоидный поиск как
@[email protected]({},{:username=>1})
Но это дает мне ошибку, что он не может найти действительный документ с идентификатором = {}
я тоже пробовал
@[email protected]({:username=>1})
Но вместо того, чтобы возвращать только имя пользователя, он возвращает все, что делает другое поле нулевым.
{"_id":"534186e5414fc34bc5000002","ad":null,"ae":null,"cat":null...and so on}
Мой вопрос в том, чтобы сделать вызовы API наиболее эффективными. потребляя наименьшее количество мобильных данных, можно ли отправить данные из MongoDB в следующем формате
{"_id":"534186e5414fc34bc5000002"}
Такой подход позволит всем моим API отправлять только достоверную информацию и будет поддерживать мобильную сеть. Поскольку я ожидаю около 1000 объектов за один вызов API.
Также возможно ли получить мой вывод в этом формате?
[{"_id":"534186e5414fc34bc5000002","un":"Name"},{"_id":"534186e5414fc34bc5000003","un":"Dummy"}]