我在過去的一天掙扎着一些奇怪的情況。 發生什麼事情是,對遠程服務器上的API的http請求偶爾會發送重複的請求。 任何人都可以提供關於如何避免這些重複請求的幫助嗎?AngularJS如何防止重複的http請求?
這裏是我在工廠使用一個函數的一個例子:
factory.getAllConsultedClientsLogs = function(oParams) {
var deferred = $q.defer();
$http.post('url/to/api', oParams)
.success(function(response) {
deferred.resolve(response);
})
.error(function() {
deferred.reject("Error! @factory.getAllConsultedClientsLogs");
});
return deferred.promise;
};
...和控制器上指示使用上述的函數的一個例子:
$scope.openConsultedClientsLogsModal = function(operator, date) {
if (angular.isDefined(operator) && angular.isDefined(date)) {
RrAuditingFactory.getAllConsultedClientsLogs({'operator':operator,'date':date}).then(function(promise) {
if (angular.isObject(promise) && angular.isDefined(promise.error) && promise.error == 0) {
var modalInstance = $modal.open({
templateUrl: 'path/partial',
controller: function($scope, $modalInstance, logsResult) {
$scope.logsResult = logsResult;
},
resolve: {
logsResult: function() {
return promise.result;
}
}
});
modalInstance.result.then(function() {
}, function() {
});
} else {
ErrorContext.setError(promise.errorMsg);
}
}, function(promise) {
ErrorContext.setError(promise);
});
} else {
ErrorContext.setError();
}
};
謝謝你提前..希望任何人都可以幫助我...
有意義...我測試瞭解綁定並解決了我的問題。謝謝您的合作。 – edgaraafelix