first commit
This commit is contained in:
31
build/node_modules/parse-headers/parse-headers.js
generated
vendored
Normal file
31
build/node_modules/parse-headers/parse-headers.js
generated
vendored
Normal file
@@ -0,0 +1,31 @@
|
||||
var trim = require('trim')
|
||||
, forEach = require('for-each')
|
||||
, isArray = function(arg) {
|
||||
return Object.prototype.toString.call(arg) === '[object Array]';
|
||||
}
|
||||
|
||||
module.exports = function (headers) {
|
||||
if (!headers)
|
||||
return {}
|
||||
|
||||
var result = {}
|
||||
|
||||
forEach(
|
||||
trim(headers).split('\n')
|
||||
, function (row) {
|
||||
var index = row.indexOf(':')
|
||||
, key = trim(row.slice(0, index)).toLowerCase()
|
||||
, value = trim(row.slice(index + 1))
|
||||
|
||||
if (typeof(result[key]) === 'undefined') {
|
||||
result[key] = value
|
||||
} else if (isArray(result[key])) {
|
||||
result[key].push(value)
|
||||
} else {
|
||||
result[key] = [ result[key], value ]
|
||||
}
|
||||
}
|
||||
)
|
||||
|
||||
return result
|
||||
}
|
||||
Reference in New Issue
Block a user