Javascript 参数';数据';在$httpProvider的转换请求中未定义

Javascript 参数';数据';在$httpProvider的转换请求中未定义,javascript,ajax,angularjs,angular-http,Javascript,Ajax,Angularjs,Angular Http,我正在尝试使用$httpProvider进行请求转换,如下所示: angular.module('myApp') .config(function ($httpProvider, requestNotificationProvider) { $httpProvider .defaults .transformRequest

我正在尝试使用$httpProvider进行请求转换,如下所示:

    angular.module('myApp')
        .config(function ($httpProvider,
                          requestNotificationProvider) {
            $httpProvider
                .defaults
                .transformRequest
                .push(function (data) {
                    requestNotificationProvider
                        .fireRequestStarted(data);
                    return data;
                });
});
requestNotificationProvider是一个应该执行某些操作的提供程序,但关键是在调试时,在每个ajax请求中, 参数“data”未定义,我想获取当前ajax请求的信息


此代码有问题吗?

transformRequest
只能更改随请求传递的
数据
对象,如果需要
请求本身,则需要使用$http侦听器

$http


如果您有
$http.post('/somewhere',{data:{}})
,那么
数据:{}
将是您在requestTransformation中的数据,您是否期望实际请求及其标头?为什么返回数据而不是承诺?@maurycy是的,我期望实际请求,那么如何检索标头?
$httpProvider.interceptors.push(function($q) {
  return {
   'request': function(config) {
       // same as above
    },

    'response': function(response) {
       // same as above
    }
  };
});