1
AngularJS
$resource
にサーバーへの呼び出し後にすべてのパラメータ(実際に呼び出されたURL)を展開したURLテンプレートを読み込む方法はありますか?
私は実際のURLを記録したいと思っています。
AngularJS
$resource
にサーバーへの呼び出し後にすべてのパラメータ(実際に呼び出されたURL)を展開したURLテンプレートを読み込む方法はありますか?
私は実際のURLを記録したいと思っています。
これはインターセプタで実現できます。このようにして、すべての$リソースにあなたのログ情報を追加する必要はありません。
これはところで、あなたがリクエストメソッドの「configオブジェクトからURLを取得することができ、あなたのapp.jsに
// register the interceptor as a service
$provide.factory('loggingInterceptor', function($q) {
return {
// optional method
'request': function(config) {
return config;
},
// optional method
'requestError': function(rejection) {
// log your error
return $q.reject(rejection);
},
// optional method
'response': function(response) {
// do something on success
return response;
},
// optional method
'responseError': function(rejection) {
// log your error
return $q.reject(rejection);
}};
});
$httpProvider.interceptors.push('loggingInterceptor');
を行きます。ちょうどconsole.log(config)を実行し、そこからそれを拾い上げてください。私はそのconfig.url
AgularJS $http serviceの下のドキュメントのインターセプタの詳細については、インターセプタトピックです。
configオブジェクトには、要求パラメータとともにURLが展開されていません。 –
'config.params'からパラメータを取得できます – Srijith
展開されたURL(実際に$ httpで呼び出されたURL)ではなく、ブラウザにコピー&ペーストして問題をデビューさせることはできません。とにかく、ありがとうございました。あなたの評判がどんなに高まるのはすばらしいことです。 –