Я использую сервер REST для извлечения данных. В пользовательском интерфейсе AngularJS пользователю предоставляется выбор из нескольких вариантов создания запроса для отправки на сервер REST. Проблема в том, что сервер принимает только один из них, поэтому, если пользователь хочет искать несколько объектов, они не могут. Я пытаюсь придумать способ отправки нескольких запросов (количество запросов зависит от длины массива Entity, заданного пользователем в пользовательском интерфейсе). Пока все, о чем я могу думать, это цикл цикла по длине массива сущностей, и для каждого цикла отправляйте запрос - моя проблема заключается в том, как я могу присоединиться к этим двум наборам данных? Каждый раз, когда цикл for завершается, данные переопределяются следующим набором, для которого отправляется. И количество раз, когда отправляются запросы, полностью зависит от количества объектов, которые требуется вернуть пользователю.
2
A
ответ
1
Если у вас есть уникальный идентификатор для каждого элемента результата, вы можете попробовать следующий алгоритм. Надеюсь, это решит проблему.
var data = [];
loop through options selected by user {
request sent {
on sucess() {
loop though RESPONSE_DATA_ARRAY {
var id = RESPONSE_DATA_ARRAY_ITEM.uniuqe_key
if(data[id] === undefined){
data[id] = RESPONSE_DATA_ARRAY_ITEM;
//Stored as Key Value pair, which will help to identify same object each time easily.
}
}
}
}
}
+0
Спасибо, я постараюсь реализовать это и вернусь: D – xeon48
У вас самая типичная проблема. Вы можете разрешить с закрытием Javascript. –
Как я понимаю, вы пытаетесь отфильтровать некоторые данные на основе некоторых параметров. Предположим, что у вас есть всего 100 записей и вы ищете только записи типа A, B, C. Но сервер возвращает элемент A records (10). Затем в следующем сервере запросов возвращается элемент типа B (15). и для элемента C (5). Итак, вы хотите отобразить (10 + 15 + 5-Common Elements) правильно? –
Да @ParthaSarathiGhosh, но количество запросов времени отправляется в зависимости от того, сколько пользователей выбирает пользователь, может быть 2 запроса, может быть 10. – xeon48