(config)
| 10624 | } |
| 10625 | |
| 10626 | function mergeHeaders(config) { |
| 10627 | var defHeaders = defaults.headers, |
| 10628 | reqHeaders = extend({}, config.headers), |
| 10629 | defHeaderName, lowercaseDefHeaderName, reqHeaderName; |
| 10630 | |
| 10631 | defHeaders = extend({}, defHeaders.common, defHeaders[lowercase(config.method)]); |
| 10632 | |
| 10633 | // using for-in instead of forEach to avoid unecessary iteration after header has been found |
| 10634 | defaultHeadersIteration: |
| 10635 | for (defHeaderName in defHeaders) { |
| 10636 | lowercaseDefHeaderName = lowercase(defHeaderName); |
| 10637 | |
| 10638 | for (reqHeaderName in reqHeaders) { |
| 10639 | if (lowercase(reqHeaderName) === lowercaseDefHeaderName) { |
| 10640 | continue defaultHeadersIteration; |
| 10641 | } |
| 10642 | } |
| 10643 | |
| 10644 | reqHeaders[defHeaderName] = defHeaders[defHeaderName]; |
| 10645 | } |
| 10646 | |
| 10647 | // execute if header value is a function for merged headers |
| 10648 | return executeHeaderFns(reqHeaders, shallowCopy(config)); |
| 10649 | } |
| 10650 | } |
| 10651 | |
| 10652 | $http.pendingRequests = []; |
no test coverage detected