Я хотел бы перечислить каждый запрос, отправленный на сервер. Теперь я сохраняю каждый запрос в объекте с идентификатором.
//code sample that explain my context
function handleReq(){
this.list={};
}
var reqhandler = new handleReq;
//adding each request like this
reqhandler.list[req.id] = req;
Проблема заключается в том, что мое приложение выдает много запросов (т.е. Более тысячи). если пользователь больше использует приложение, пропорционально размер объекта увеличивается.
Теперь я хотел бы знать, это лучший способ сохранить запросы?
если это не хорошо, пожалуйста, предложите несколько альтернатив?
Если вам не нужно обращаться к запросам по идентификатору, почему бы не использовать массив:
function handleReq(){
this.list=[];
}
var reqhandler = new handleReq;
reqhandler.list.push(req);
Очевидно, что если вам нужно сохранить запросы за пределами жизни текущей страницы, вам нужно будет продолжать запросы либо в localstorage в браузере, либо в какой-то серверный репозиторий, но из-за звука вашего вопроса я не думаю, что это дело.
как насчет того, чтобы сделать что-то подобное:
var requestLogger = (function(){
var logArray = [];
var logObj = {};
logObj.add = function(obj){
logArray.push(obj);
};
logObj.get = function(){
return logArray;
};
logObj.getById = function(id){
//return log elemnt by id from array.
};
return logObj;
}());
requestLogger.add("new request id");
console.log(requestLogger.get());