В основном с вашим кодом вы Array
не являетесь другим объектом, поэтому вам нужно воссоздать объект из вашего отсортированного массива. Это может быть сделано с помощью функции Reduce для каждой или любой функции зацикливания. Я думаю, что сокращение легче увидеть.
здесь вы используете what you get
и возвращаете what you want
const yourResult = [
{
"id": "fbl@be-activ-it.fr-Quiz-10",
"user_id": "fbl@be-activ-it.fr",
"myposition": 2,
"points": 38
},
{
"id": "ddd@be-activ-it.fr-Quiz-10",
"user_id": "ddd@be-activ-it.fr",
"myposition": 3,
"points": 37
},
{
"id": "dev@be-activ-it.fr-Quiz-10",
"user_id": "dev@be-activ-it.fr",
"myposition": 1,
"points": 35
}
]
const whatYouWant = yourResult.reduce((a, c, i) => {
c['myposition'] = i + 1;
a[c.id] = c;
return a;
}, {})
console.log(whatYouWant)
Существует также mod_atom - модуль Apache, который хранит записи в файловой системе.
Компания, на которую я работаю, разрабатывает много УСПОКОИТЕЛЬНЫХ сервисов. Однако ни один из них не выставляет общедоступные API. (В том смысле, что все сервисы внутренне используются нашими собственными клиентами). Причина, почему мы пошли для архитектурного стиля REST, состояла в том, что мы хотели, чтобы наши сервисы были легко потребляемыми и что еще более важно масштабировались хорошо.
От моего собственного практического опыта я пришел к выводу, что HTTP + формат синдикации ATOM является хорошей идеей, если Вы хотите сохранить вещи гибкими (С точки зрения другой модели содержания, присоединяя и расширяя метаданные, связанные с полезными нагрузками, универсальная форма, анализирующая и т.д.). ATOM гарантирует, что все интерпретируют полезную нагрузку универсальным способом без любого объема для неоднозначности.
Однако, если Вы не имеете никаких подобных сложных требований или не предвидите такие требования затем, Формат Atom мог быть чем-то вроде служебным. (Например, элементы как Автор, Заголовок и т.д. имеет смысл больше в мире блоггинга/RSS и не может иметь смысла в Вашей конкретной проблемной области).
Также, если цель состоит в том, чтобы просто сериализировать структуры данных в одном конце и восстановить его с другой стороны, то большинство веб-платформ (как WCF) имеет пользовательские форматы, которые являются более привлекательными.
Таким образом, по-моему, Паб ATOM хорош при необходимости в гибкости с точки зрения представления данных и если игровая площадка огромна с другим видом клиента.
Однако, если у Вас есть хорошее знание потенциальных клиентов и шаблонов использования сервера/клиента затем, пользовательские форматы могли бы быть хорошей идеей.
Если клиент на базе браузера затем, форматы как JSON являются очень привлекательными.
Надежда это отвечает на Ваш вопрос.
Мое собственное исследование до сих пор:
Последний раз, когда я проверял (2007 или около того) Atompub, было довольно сложно реализовать. Несмотря на то, что вы можете собрать воедино что-то, что генерирует действительные потоки Atom во время обеденного перерыва, реализация AtomPub была довольно большой задачей.
Это могло бы измениться из-за лучших библиотек и инструментов, но все же это могло бы быть слишком сложным для реализации меньшими сторонами только потому, что это круто.
А отсутствие клиентских приложений-убийц AtomPub практически не заставляет операторов серверов предлагать интерфейс AtomPub.