从$ http.defaults.transformRequest数组中删除

时间:2014-07-02 22:58:31

标签: javascript angularjs

我正在为这样的HTTP请求添加标头

$http.defaults.transformRequest.push(function (data, headersGetter) {
    headersGetter().authToken = "myAuthToken";
    return data;
});

如何在以后删除该标题?我知道我可以做.pop(),但如果由于某种原因我有.push()以及更多功能,我就不会删除正确的功能。

1 个答案:

答案 0 :(得分:0)

我能够通过命名函数

来实现
// Add header
$http.defaults.transformRequest.push(function addAuthToken(data, headersGetter) {
    headersGetter().authToken = "myAuthToken";
    return data;
});

// Remove header
$http.defaults.transformRequest = $http.defaults.transformRequest.filter(function (func) {
    return !(func.name == "addAuthToken");
});