Après avoir rendu la page entière en fonction de plusieurs contextes utilisateur et avoir fait plusieurs $http
demandes, je veux que l'utilisateur puisse changer de contexte et tout restituer à nouveau (renvoyer toutes les $http
demandes, etc.). Si je redirige simplement l'utilisateur ailleurs, les choses fonctionnent correctement:
$scope.on_impersonate_success = function(response) {
//$window.location.reload(); // This cancels any current request
$location.path('/'); // This works as expected, if path != current_path
};
$scope.impersonate = function(username) {
return auth.impersonate(username)
.then($scope.on_impersonate_success, $scope.on_auth_failed);
};
Si j'utilise $window.location.reload()
, alors certaines des $http
demandes auth.impersonate(username)
qui attendent une réponse sont annulées, donc je ne peux pas l'utiliser. De plus, le hack $location.path($location.path())
ne fonctionne pas non plus (rien ne se passe).
Existe-t-il un autre moyen de restituer la page sans émettre à nouveau toutes les demandes manuellement?