from your http://blog.codebrag.com/post/57412530001/preventing-duplicated-requests-in-angularjs
angular.module('triAngular').config(function($provide) {
$provide.decorator('$http', function($delegate, $q) {
return triAngular.commons.uniqueRequestsAwareHttpService($delegate, $q);
});
})
i faced "triAngular" is not defined error? how to solve it?app.commons.uniqueRequestsAwareHttpService = function($http) {
var uniqueRequestOptionName = "unique";
var requestIdOptionName = 'requestId';
// should we care about duplicates check
function checkForDuplicates(requestConfig) {
return !!requestConfig[uniqueRequestOptionName];
}
// find identical request in pending requests
function checkIfDuplicated(requestConfig) {
var duplicated = $http.pendingRequests.filter(function(pendingReqConfig) {
return pendingReqConfig[requestIdOptionName] && pendingReqConfig[requestIdOptionName] === requestConfig[requestIdOptionName];
});
return duplicated.length > 0;
}
var modifiedHttpService = function(requestConfig) {
// if we need to check for dups and pending found - return
if(checkForDuplicates(requestConfig) && checkIfDuplicated(requestConfig)) {
return;
}
// otherwise pass requeust to original $http service
return $http(requestConfig);
};
return modifiedHttpService; };