Angular js の http インターセプターに関する適切なドキュメントを実際に見つけることができません。エラーを処理している間、これを使用してng-include
インターセプトできます。responseError
app.config(function ($httpProvider) {
$httpProvider.interceptors.push('templateInterceptor');
});
// register the interceptor as a service
app.factory('templateInterceptor', function($q) {
return {
'responseError': function(rejection) {
var isTemplate = !!rejection.config.url.match(/^content/g);
if (isTemplate) {
// here we add error message, but how this message appesrs in the place of ng-include
rejection.data = '<div><template-error url="\''+ (rejection.config.url) + '\'"><strong>Error from interceptor.</strong></template-error></div>';
return rejection;
} else {
return $q.reject(rejection);
}
}
}
});
このコードは、この質問how to catch angular ng-include errorから取得されました。わかりません、インターセプターはどのように機能しますか? 彼らは何を返さなければなりませんか?インターセプターrejection
に渡されたパラメーターの使用方法は? プロパティでは、失敗したディレクティブの場所にエラー メッセージを含めるために使用されますが、responseError
これはどのように機能しますか?rejection
data
ng-include