(config)
| 9477 | } |
| 9478 | |
| 9479 | function mergeHeaders(config) { |
| 9480 | var defHeaders = defaults.headers, |
| 9481 | reqHeaders = extend({}, config.headers), |
| 9482 | defHeaderName, lowercaseDefHeaderName, reqHeaderName; |
| 9483 | |
| 9484 | defHeaders = extend({}, defHeaders.common, defHeaders[lowercase(config.method)]); |
| 9485 | |
| 9486 | // using for-in instead of forEach to avoid unecessary iteration after header has been found |
| 9487 | defaultHeadersIteration: |
| 9488 | for (defHeaderName in defHeaders) { |
| 9489 | lowercaseDefHeaderName = lowercase(defHeaderName); |
| 9490 | |
| 9491 | for (reqHeaderName in reqHeaders) { |
| 9492 | if (lowercase(reqHeaderName) === lowercaseDefHeaderName) { |
| 9493 | continue defaultHeadersIteration; |
| 9494 | } |
| 9495 | } |
| 9496 | |
| 9497 | reqHeaders[defHeaderName] = defHeaders[defHeaderName]; |
| 9498 | } |
| 9499 | |
| 9500 | // execute if header value is a function for merged headers |
| 9501 | return executeHeaderFns(reqHeaders); |
| 9502 | } |
| 9503 | } |
| 9504 | |
| 9505 | $http.pendingRequests = []; |
no test coverage detected