初始化
This commit is contained in:
3
uni_modules/UniDevTools/node_modules/parse-headers/.travis.yml
generated
vendored
Normal file
3
uni_modules/UniDevTools/node_modules/parse-headers/.travis.yml
generated
vendored
Normal file
@@ -0,0 +1,3 @@
|
||||
language: node_js
|
||||
node_js:
|
||||
- node
|
||||
21
uni_modules/UniDevTools/node_modules/parse-headers/LICENCE
generated
vendored
Normal file
21
uni_modules/UniDevTools/node_modules/parse-headers/LICENCE
generated
vendored
Normal file
@@ -0,0 +1,21 @@
|
||||
Copyright (c) 2014 David Björklund
|
||||
|
||||
This software is released under the MIT license:
|
||||
|
||||
Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
of this software and associated documentation files (the "Software"), to deal
|
||||
in the Software without restriction, including without limitation the rights
|
||||
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||
copies of the Software, and to permit persons to whom the Software is
|
||||
furnished to do so, subject to the following conditions:
|
||||
|
||||
The above copyright notice and this permission notice shall be included in
|
||||
all copies or substantial portions of the Software.
|
||||
|
||||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
||||
THE SOFTWARE.
|
||||
11
uni_modules/UniDevTools/node_modules/parse-headers/example.js
generated
vendored
Normal file
11
uni_modules/UniDevTools/node_modules/parse-headers/example.js
generated
vendored
Normal file
@@ -0,0 +1,11 @@
|
||||
var parse = require('./parse-headers')
|
||||
|
||||
, headers = [
|
||||
'Date: Sun, 17 Aug 2014 16:24:52 GMT'
|
||||
, 'Content-Type: text/html; charset=utf-8'
|
||||
, 'Transfer-Encoding: chunked'
|
||||
, 'X-Custom-Header: beep'
|
||||
, 'X-Custom-Header: boop'
|
||||
].join('\n')
|
||||
|
||||
console.log(parse(headers))
|
||||
4
uni_modules/UniDevTools/node_modules/parse-headers/index.d.ts
generated
vendored
Normal file
4
uni_modules/UniDevTools/node_modules/parse-headers/index.d.ts
generated
vendored
Normal file
@@ -0,0 +1,4 @@
|
||||
declare module 'parse-headers' {
|
||||
function parseHeaders(headers: string): Record<string, string | string[]>
|
||||
export = parseHeaders
|
||||
}
|
||||
28
uni_modules/UniDevTools/node_modules/parse-headers/package.json
generated
vendored
Normal file
28
uni_modules/UniDevTools/node_modules/parse-headers/package.json
generated
vendored
Normal file
@@ -0,0 +1,28 @@
|
||||
{
|
||||
"name": "parse-headers",
|
||||
"version": "2.0.5",
|
||||
"description": "Parse http headers, works with browserify/xhr",
|
||||
"main": "parse-headers.js",
|
||||
"types": "index.d.ts",
|
||||
"scripts": {
|
||||
"test": "node test.js"
|
||||
},
|
||||
"repository": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/kesla/parse-headers.git"
|
||||
},
|
||||
"keywords": [
|
||||
"http",
|
||||
"headers"
|
||||
],
|
||||
"author": "David Björklund <david.bjorklund@gmail.com>",
|
||||
"license": "MIT",
|
||||
"bugs": {
|
||||
"url": "https://github.com/kesla/parse-headers/issues"
|
||||
},
|
||||
"homepage": "https://github.com/kesla/parse-headers",
|
||||
"devDependencies": {
|
||||
"tape": "^4.10.1"
|
||||
},
|
||||
"dependencies": {}
|
||||
}
|
||||
32
uni_modules/UniDevTools/node_modules/parse-headers/parse-headers.js
generated
vendored
Normal file
32
uni_modules/UniDevTools/node_modules/parse-headers/parse-headers.js
generated
vendored
Normal file
@@ -0,0 +1,32 @@
|
||||
var trim = function(string) {
|
||||
return string.replace(/^\s+|\s+$/g, '');
|
||||
}
|
||||
, isArray = function(arg) {
|
||||
return Object.prototype.toString.call(arg) === '[object Array]';
|
||||
}
|
||||
|
||||
module.exports = function (headers) {
|
||||
if (!headers)
|
||||
return {}
|
||||
|
||||
var result = {}
|
||||
|
||||
var headersArr = trim(headers).split('\n')
|
||||
|
||||
for (var i = 0; i < headersArr.length; i++) {
|
||||
var row = headersArr[i]
|
||||
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
|
||||
}
|
||||
70
uni_modules/UniDevTools/node_modules/parse-headers/readme.md
generated
vendored
Normal file
70
uni_modules/UniDevTools/node_modules/parse-headers/readme.md
generated
vendored
Normal file
@@ -0,0 +1,70 @@
|
||||
# parse-headers[](http://travis-ci.org/kesla/parse-headers)
|
||||
|
||||
Parse http headers, works with browserify/xhr
|
||||
|
||||
[](https://nodei.co/npm/parse-headers/)
|
||||
|
||||
[](https://nodei.co/npm/parse-headers/)
|
||||
|
||||
[](https://saucelabs.com/u/kesla-xhr-headers)
|
||||
|
||||
## Installation
|
||||
|
||||
```
|
||||
npm install parse-headers
|
||||
```
|
||||
|
||||
## Example
|
||||
|
||||
### Input
|
||||
|
||||
```javascript
|
||||
var parse = require('./parse-headers')
|
||||
|
||||
, headers = [
|
||||
'Date: Sun, 17 Aug 2014 16:24:52 GMT'
|
||||
, 'Content-Type: text/html; charset=utf-8'
|
||||
, 'Transfer-Encoding: chunked'
|
||||
, 'X-Custom-Header: beep'
|
||||
, 'X-Custom-Header: boop'
|
||||
].join('\n')
|
||||
|
||||
console.log(parse(headers))
|
||||
```
|
||||
|
||||
### Output
|
||||
|
||||
```
|
||||
{ date: 'Sun, 17 Aug 2014 16:24:52 GMT',
|
||||
'content-type': 'text/html; charset=utf-8',
|
||||
'transfer-encoding': 'chunked',
|
||||
'x-custom-header': [ 'beep', 'boop' ] }
|
||||
```
|
||||
|
||||
## Kudos
|
||||
|
||||
Looked at https://github.com/watson/http-headers before creating this.
|
||||
|
||||
## Licence
|
||||
|
||||
Copyright (c) 2014 David Björklund
|
||||
|
||||
This software is released under the MIT license:
|
||||
|
||||
Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
of this software and associated documentation files (the "Software"), to deal
|
||||
in the Software without restriction, including without limitation the rights
|
||||
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||
copies of the Software, and to permit persons to whom the Software is
|
||||
furnished to do so, subject to the following conditions:
|
||||
|
||||
The above copyright notice and this permission notice shall be included in
|
||||
all copies or substantial portions of the Software.
|
||||
|
||||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
||||
THE SOFTWARE.
|
||||
70
uni_modules/UniDevTools/node_modules/parse-headers/test.js
generated
vendored
Normal file
70
uni_modules/UniDevTools/node_modules/parse-headers/test.js
generated
vendored
Normal file
@@ -0,0 +1,70 @@
|
||||
var test = require('tape')
|
||||
, parse = require('./parse-headers')
|
||||
|
||||
, headers1 = [
|
||||
''
|
||||
, 'Date: Sun, 17 Aug 2014 16:24:52 GMT'
|
||||
, 'Content-Type: text/html; charset=utf-8'
|
||||
, 'Transfer-Encoding: chunked'
|
||||
, ''
|
||||
]
|
||||
, headers2 = [
|
||||
''
|
||||
, 'Date: Sun, 17 Aug 2014 16:24:52 GMT'
|
||||
, 'Content-Type: text/html; charset=utf-8'
|
||||
, 'Transfer-Encoding: chunked'
|
||||
, 'Set-Cookie: Foo'
|
||||
, 'set-Cookie: bar'
|
||||
, 'set-cookie: bong'
|
||||
]
|
||||
|
||||
test('sanity check', function (t) {
|
||||
|
||||
t.deepEqual(parse(), {})
|
||||
t.deepEqual(parse(''), {})
|
||||
t.end()
|
||||
})
|
||||
|
||||
test('simple', function (t) {
|
||||
t.deepEqual(
|
||||
parse(headers1.join('\r\n'))
|
||||
, {
|
||||
date: 'Sun, 17 Aug 2014 16:24:52 GMT'
|
||||
, 'content-type': 'text/html; charset=utf-8'
|
||||
, 'transfer-encoding': 'chunked'
|
||||
}
|
||||
)
|
||||
t.deepEqual(
|
||||
parse(headers1.join('\n'))
|
||||
, {
|
||||
date: 'Sun, 17 Aug 2014 16:24:52 GMT'
|
||||
, 'content-type': 'text/html; charset=utf-8'
|
||||
, 'transfer-encoding': 'chunked'
|
||||
}
|
||||
)
|
||||
|
||||
t.end()
|
||||
})
|
||||
|
||||
test('duplicate keys', function (t) {
|
||||
t.deepEqual(
|
||||
parse(headers2.join('\r\n'))
|
||||
, {
|
||||
date: 'Sun, 17 Aug 2014 16:24:52 GMT'
|
||||
, 'content-type': 'text/html; charset=utf-8'
|
||||
, 'transfer-encoding': 'chunked'
|
||||
, 'set-cookie': [ 'Foo', 'bar', 'bong' ]
|
||||
}
|
||||
)
|
||||
t.deepEqual(
|
||||
parse(headers2.join('\n'))
|
||||
, {
|
||||
date: 'Sun, 17 Aug 2014 16:24:52 GMT'
|
||||
, 'content-type': 'text/html; charset=utf-8'
|
||||
, 'transfer-encoding': 'chunked'
|
||||
, 'set-cookie': [ 'Foo', 'bar', 'bong' ]
|
||||
}
|
||||
)
|
||||
|
||||
t.end()
|
||||
})
|
||||
Reference in New Issue
Block a user