Maison > Questions et réponses > le corps du texte
Actuellement, je ne peux accéder à la page d'erreur que lorsque la requête renvoie 404
// 创建拦截器
app.factory('Http404Interceptor', function ($q)
{
return {
responseError: function (response)
{
if(response.status == 404){
location.href = appURL.fullUrl + 'error';
}
return $q.reject(response);
}
}
});
// 配置拦截器给app
app.config(function ($httpProvider)
{
$httpProvider.interceptors.push('Http404Interceptor');
});
Mais l'exigence actuelle est de relancer la requête vers un autre lien (tel que : a.php) lorsque la requête renvoie 404. Comment dois-je l'écrire pour que l'intercepteur puisse réaliser cette fonction ?
漂亮男人2017-05-15 17:04:16
Correction :
Que signifie « demander un autre lien (tel que : a.php) » ? Demander un autre api
pour obtenir des données en tant que fallback
?
Si c’est ce que cela signifie, n’est-ce pas assez simple :
// 创建拦截器
//之前忘了这里还有个循环依赖的问题,我去
app.factory('Http404Interceptor', function ($q, $injector)
{
return {
responseError: function (response)
{
if(response.status == 404){
var $http = $injector.get('$http');
return $http.get('anotherUrl');
}
return $q.reject(response);
}
}
});
// 配置拦截器给app
app.config(function ($httpProvider)
{
$httpProvider.interceptors.push('Http404Interceptor');
});