Update connect dependencies. Closes #133

pull/139/head
Maciej Winnicki 2018-08-14 11:09:08 +02:00
parent 446d144b21
commit fd735d87c0
No known key found for this signature in database
GPG Key ID: 035AA4FA2183ADFA
5 changed files with 130 additions and 571 deletions

View File

@ -1,7 +1,7 @@
'use strict';
const connect = require('connect');
const cookieParser = require('cookie');
const cookie = require('cookie');
const cookieParser = require('cookie-parser');
const crypto = require('crypto');
const path = require('path');
const SocketIO = require('socket.io');
@ -28,7 +28,6 @@ if (program.args.length === 0) {
const doAuthorization = !!(program.user && program.password);
const doSecure = !!(program.key && program.certificate);
const sessionSecret = String(+new Date()) + Math.random();
const sessionKey = 'sid';
const files = program.args.join(' ');
const filesNamespace = crypto
.createHash('md5')
@ -47,7 +46,7 @@ if (program.daemonize) {
*/
const appBuilder = connectBuilder(urlPath);
if (doAuthorization) {
appBuilder.session(sessionSecret, sessionKey);
appBuilder.session(sessionSecret);
appBuilder.authorize(program.user, program.password);
}
appBuilder
@ -74,12 +73,12 @@ if (program.daemonize) {
io.use((socket, next) => {
const handshakeData = socket.request;
if (handshakeData.headers.cookie) {
const cookies = cookieParser.parse(handshakeData.headers.cookie);
const sessionIdEncoded = cookies[sessionKey];
const cookies = cookie.parse(handshakeData.headers.cookie);
const sessionIdEncoded = cookies['connect.sid'];
if (!sessionIdEncoded) {
return next(new Error('Session cookie not provided'), false);
}
const sessionId = connect.utils.parseSignedCookie(sessionIdEncoded, sessionSecret);
const sessionId = cookieParser.signedCookie(sessionIdEncoded, sessionSecret);
if (sessionId) {
return next(null);
}

View File

@ -2,6 +2,9 @@
const connect = require('connect');
const fs = require('fs');
const serveStatic = require('serve-static');
const expressSession = require('express-session');
const basicAuth = require('basic-auth-connect');
function ConnectBuilder(urlPath) {
this.app = connect();
@ -11,9 +14,7 @@ function ConnectBuilder(urlPath) {
ConnectBuilder.prototype.authorize = function authorize(user, pass) {
this.app.use(
this.urlPath,
connect.basicAuth(
(incomingUser, incomingPass) => user === incomingUser && pass === incomingPass
)
basicAuth((incomingUser, incomingPass) => user === incomingUser && pass === incomingPass)
);
return this;
@ -46,20 +47,20 @@ ConnectBuilder.prototype.index = function index(path, files, filesNamespace, the
return this;
};
ConnectBuilder.prototype.session = function session(secret, key) {
this.app.use(this.urlPath, connect.cookieParser());
ConnectBuilder.prototype.session = function sessionf(secret) {
this.app.use(
this.urlPath,
connect.session({
expressSession({
secret,
key,
resave: false,
saveUninitialized: true,
})
);
return this;
};
ConnectBuilder.prototype.static = function staticf(path) {
this.app.use(this.urlPath, connect.static(path));
this.app.use(this.urlPath, serveStatic(path));
return this;
};

661
package-lock.json generated
View File

@ -342,31 +342,16 @@
"resolved": "https://registry.npmjs.org/base64-arraybuffer/-/base64-arraybuffer-0.1.5.tgz",
"integrity": "sha1-c5JncZI7Whl0etZmqlzUv5xunOg="
},
"base64-url": {
"version": "1.2.1",
"resolved": "https://registry.npmjs.org/base64-url/-/base64-url-1.2.1.tgz",
"integrity": "sha1-GZ/WYXAqDnt9yubgaYuwicUvbXg="
},
"base64id": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/base64id/-/base64id-1.0.0.tgz",
"integrity": "sha1-R2iMuZu2gE8OBtPnY7HDLlfY5rY="
},
"basic-auth": {
"version": "1.0.4",
"resolved": "https://registry.npmjs.org/basic-auth/-/basic-auth-1.0.4.tgz",
"integrity": "sha1-Awk1sB3nyblKgksp8/zLdQ06UpA="
},
"basic-auth-connect": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/basic-auth-connect/-/basic-auth-connect-1.0.0.tgz",
"integrity": "sha1-/bC0OWLKe0BFanwrtI/hc9otISI="
},
"batch": {
"version": "0.5.3",
"resolved": "https://registry.npmjs.org/batch/-/batch-0.5.3.tgz",
"integrity": "sha1-PzQU84AyF0O/wQQvmoP/HVgk1GQ="
},
"bcrypt-pbkdf": {
"version": "1.0.1",
"resolved": "https://registry.npmjs.org/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.1.tgz",
@ -390,35 +375,6 @@
"resolved": "https://registry.npmjs.org/blob/-/blob-0.0.4.tgz",
"integrity": "sha1-vPEwUspURj8w+fx+lbmkdjCpSSE="
},
"body-parser": {
"version": "1.13.3",
"resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.13.3.tgz",
"integrity": "sha1-wIzzMMM1jhUQFqBXRvE/ApyX+pc=",
"requires": {
"bytes": "2.1.0",
"content-type": "1.0.4",
"debug": "2.2.0",
"depd": "1.0.1",
"http-errors": "1.3.1",
"iconv-lite": "0.4.11",
"on-finished": "2.3.0",
"qs": "4.0.0",
"raw-body": "2.1.7",
"type-is": "1.6.16"
},
"dependencies": {
"iconv-lite": {
"version": "0.4.11",
"resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.11.tgz",
"integrity": "sha1-LstC/SlHRJIiCaLnxATayHk9it4="
},
"qs": {
"version": "4.0.0",
"resolved": "https://registry.npmjs.org/qs/-/qs-4.0.0.tgz",
"integrity": "sha1-wx2bdOwn33XlQ6hseHKO2NRiNgc="
}
}
},
"boom": {
"version": "4.3.1",
"resolved": "https://registry.npmjs.org/boom/-/boom-4.3.1.tgz",
@ -478,11 +434,6 @@
"resolved": "https://registry.npmjs.org/byline/-/byline-5.0.0.tgz",
"integrity": "sha1-dBxSFkaOrcRXsDQQEYrXfejB3bE="
},
"bytes": {
"version": "2.1.0",
"resolved": "https://registry.npmjs.org/bytes/-/bytes-2.1.0.tgz",
"integrity": "sha1-rJPEEOL/ycx89LRks4KJBn9eR7Q="
},
"cache-base": {
"version": "1.0.1",
"resolved": "https://registry.npmjs.org/cache-base/-/cache-base-1.0.1.tgz",
@ -682,50 +633,6 @@
"resolved": "https://registry.npmjs.org/component-inherit/-/component-inherit-0.0.3.tgz",
"integrity": "sha1-ZF/ErfWLcrZJ1crmUTVhnbJv8UM="
},
"compressible": {
"version": "2.0.14",
"resolved": "https://registry.npmjs.org/compressible/-/compressible-2.0.14.tgz",
"integrity": "sha1-MmxfUH+7BV9UEWeCuWmoG2einac=",
"requires": {
"mime-db": "1.35.0"
},
"dependencies": {
"mime-db": {
"version": "1.35.0",
"resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.35.0.tgz",
"integrity": "sha512-JWT/IcCTsB0Io3AhWUMjRqucrHSPsSf2xKLaRldJVULioggvkJvggZ3VXNNSRkCddE6D+BUI4HEIZIA2OjwIvg=="
}
}
},
"compression": {
"version": "1.5.2",
"resolved": "https://registry.npmjs.org/compression/-/compression-1.5.2.tgz",
"integrity": "sha1-sDuNhub4rSloPLqN+R3cb/x3s5U=",
"requires": {
"accepts": "1.2.13",
"bytes": "2.1.0",
"compressible": "2.0.14",
"debug": "2.2.0",
"on-headers": "1.0.1",
"vary": "1.0.1"
},
"dependencies": {
"accepts": {
"version": "1.2.13",
"resolved": "https://registry.npmjs.org/accepts/-/accepts-1.2.13.tgz",
"integrity": "sha1-5fHzkoxtlf2WVYw27D2dDeSm7Oo=",
"requires": {
"mime-types": "2.1.17",
"negotiator": "0.5.3"
}
},
"negotiator": {
"version": "0.5.3",
"resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.5.3.tgz",
"integrity": "sha1-Jp1cR2gQ7JLtvntsLygxY4T5p+g="
}
}
},
"concat-map": {
"version": "0.0.1",
"resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz",
@ -776,71 +683,14 @@
}
},
"connect": {
"version": "2.30.2",
"resolved": "https://registry.npmjs.org/connect/-/connect-2.30.2.tgz",
"integrity": "sha1-jam8vooFTT0xjXTf7JA7XDmhtgk=",
"version": "3.6.6",
"resolved": "https://registry.npmjs.org/connect/-/connect-3.6.6.tgz",
"integrity": "sha1-Ce/2xVr3I24TcTWnJXSFi2eG9SQ=",
"requires": {
"basic-auth-connect": "1.0.0",
"body-parser": "1.13.3",
"bytes": "2.1.0",
"compression": "1.5.2",
"connect-timeout": "1.6.2",
"content-type": "1.0.4",
"cookie": "0.1.3",
"cookie-parser": "1.3.5",
"cookie-signature": "1.0.6",
"csurf": "1.8.3",
"debug": "2.2.0",
"depd": "1.0.1",
"errorhandler": "1.4.3",
"express-session": "1.11.3",
"finalhandler": "0.4.0",
"fresh": "0.3.0",
"http-errors": "1.3.1",
"method-override": "2.3.10",
"morgan": "1.6.1",
"multiparty": "3.3.2",
"on-headers": "1.0.1",
"debug": "2.6.9",
"finalhandler": "1.1.0",
"parseurl": "1.3.2",
"pause": "0.1.0",
"qs": "4.0.0",
"response-time": "2.3.2",
"serve-favicon": "2.3.2",
"serve-index": "1.7.3",
"serve-static": "1.10.3",
"type-is": "1.6.16",
"utils-merge": "1.0.0",
"vhost": "3.0.2"
},
"dependencies": {
"cookie": {
"version": "0.1.3",
"resolved": "https://registry.npmjs.org/cookie/-/cookie-0.1.3.tgz",
"integrity": "sha1-5zSlwUF/zkctWu+Cw4HKu2TRpDU="
},
"qs": {
"version": "4.0.0",
"resolved": "https://registry.npmjs.org/qs/-/qs-4.0.0.tgz",
"integrity": "sha1-wx2bdOwn33XlQ6hseHKO2NRiNgc="
}
}
},
"connect-timeout": {
"version": "1.6.2",
"resolved": "https://registry.npmjs.org/connect-timeout/-/connect-timeout-1.6.2.tgz",
"integrity": "sha1-3ppexh4zoStu2qt7XwYumMWZuI4=",
"requires": {
"debug": "2.2.0",
"http-errors": "1.3.1",
"ms": "0.7.1",
"on-headers": "1.0.1"
},
"dependencies": {
"ms": {
"version": "0.7.1",
"resolved": "https://registry.npmjs.org/ms/-/ms-0.7.1.tgz",
"integrity": "sha1-nNE8A62/8ltl7/3nzoZO6VIBcJg="
}
"utils-merge": "1.0.1"
}
},
"contains-path": {
@ -849,11 +699,6 @@
"integrity": "sha1-/ozxhP9mcLa67wGp1IYaXL7EEgo=",
"dev": true
},
"content-type": {
"version": "1.0.4",
"resolved": "https://registry.npmjs.org/content-type/-/content-type-1.0.4.tgz",
"integrity": "sha512-hIP3EEPs8tB9AT1L+NUqtwOAps4mk2Zob89MWXMHjHWg9milF/j4osnnQLXBCBFBk/tvIG/tUc9mOUJiPBhPXA=="
},
"content-type-parser": {
"version": "1.0.2",
"resolved": "https://registry.npmjs.org/content-type-parser/-/content-type-parser-1.0.2.tgz",
@ -866,18 +711,18 @@
"integrity": "sha1-kOtGndzpBchm3mh+/EMTHYgB+dA="
},
"cookie-parser": {
"version": "1.3.5",
"resolved": "https://registry.npmjs.org/cookie-parser/-/cookie-parser-1.3.5.tgz",
"integrity": "sha1-nXVVcPtdF4kHcSJ6AjFNm+fPg1Y=",
"version": "1.4.3",
"resolved": "https://registry.npmjs.org/cookie-parser/-/cookie-parser-1.4.3.tgz",
"integrity": "sha1-D+MfoZ0AC5X0qt8fU/3CuKIDuqU=",
"requires": {
"cookie": "0.1.3",
"cookie": "0.3.1",
"cookie-signature": "1.0.6"
},
"dependencies": {
"cookie": {
"version": "0.1.3",
"resolved": "https://registry.npmjs.org/cookie/-/cookie-0.1.3.tgz",
"integrity": "sha1-5zSlwUF/zkctWu+Cw4HKu2TRpDU="
"version": "0.3.1",
"resolved": "https://registry.npmjs.org/cookie/-/cookie-0.3.1.tgz",
"integrity": "sha1-5+Ch+e9DtMi6klxcWpboBtFoc7s="
}
}
},
@ -901,12 +746,13 @@
"core-util-is": {
"version": "1.0.2",
"resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz",
"integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac="
"integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=",
"dev": true
},
"crc": {
"version": "3.3.0",
"resolved": "https://registry.npmjs.org/crc/-/crc-3.3.0.tgz",
"integrity": "sha1-+mIuG8OIvyVzCQgta2UgDOZwkLo="
"version": "3.4.4",
"resolved": "https://registry.npmjs.org/crc/-/crc-3.4.4.tgz",
"integrity": "sha1-naHpgOO9RPxck79as9ozeNheRms="
},
"cryptiles": {
"version": "3.1.2",
@ -928,16 +774,6 @@
}
}
},
"csrf": {
"version": "3.0.6",
"resolved": "https://registry.npmjs.org/csrf/-/csrf-3.0.6.tgz",
"integrity": "sha1-thEg3c7q/JHnbtUxO7XAsmZ7cQo=",
"requires": {
"rndm": "1.2.0",
"tsscmp": "1.0.5",
"uid-safe": "2.1.4"
}
},
"cssom": {
"version": "0.3.2",
"resolved": "https://registry.npmjs.org/cssom/-/cssom-0.3.2.tgz",
@ -953,24 +789,6 @@
"cssom": "0.3.2"
}
},
"csurf": {
"version": "1.8.3",
"resolved": "https://registry.npmjs.org/csurf/-/csurf-1.8.3.tgz",
"integrity": "sha1-I/KhO/HY/OHQyZZYg5RELLqGpWo=",
"requires": {
"cookie": "0.1.3",
"cookie-signature": "1.0.6",
"csrf": "3.0.6",
"http-errors": "1.3.1"
},
"dependencies": {
"cookie": {
"version": "0.1.3",
"resolved": "https://registry.npmjs.org/cookie/-/cookie-0.1.3.tgz",
"integrity": "sha1-5zSlwUF/zkctWu+Cw4HKu2TRpDU="
}
}
},
"d": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/d/-/d-1.0.0.tgz",
@ -995,18 +813,11 @@
}
},
"debug": {
"version": "2.2.0",
"resolved": "https://registry.npmjs.org/debug/-/debug-2.2.0.tgz",
"integrity": "sha1-+HBX6ZWxofauaklgZkE3vFbwOdo=",
"version": "2.6.9",
"resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz",
"integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==",
"requires": {
"ms": "0.7.1"
},
"dependencies": {
"ms": {
"version": "0.7.1",
"resolved": "https://registry.npmjs.org/ms/-/ms-0.7.1.tgz",
"integrity": "sha1-nNE8A62/8ltl7/3nzoZO6VIBcJg="
}
"ms": "2.0.0"
}
},
"decode-uri-component": {
@ -1084,9 +895,9 @@
"dev": true
},
"depd": {
"version": "1.0.1",
"resolved": "https://registry.npmjs.org/depd/-/depd-1.0.1.tgz",
"integrity": "sha1-gK7GTJ1tl+ZcwqnKqTwKpqv3Oqo="
"version": "1.1.2",
"resolved": "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz",
"integrity": "sha1-m81S4UwJd2PnSbJ0xDRu0uVgtak="
},
"destroy": {
"version": "1.0.4",
@ -1127,6 +938,11 @@
"resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz",
"integrity": "sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0="
},
"encodeurl": {
"version": "1.0.2",
"resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz",
"integrity": "sha1-rT/0yG7C0CkyL1oCw6mmBslbP1k="
},
"engine.io": {
"version": "1.8.5",
"resolved": "https://registry.npmjs.org/engine.io/-/engine.io-1.8.5.tgz",
@ -1212,15 +1028,6 @@
"wtf-8": "1.0.0"
}
},
"errorhandler": {
"version": "1.4.3",
"resolved": "https://registry.npmjs.org/errorhandler/-/errorhandler-1.4.3.tgz",
"integrity": "sha1-t7cO2PNZ6duICS8tIMD4MUIK2D8=",
"requires": {
"accepts": "1.3.3",
"escape-html": "1.0.3"
}
},
"es5-ext": {
"version": "0.10.37",
"resolved": "https://registry.npmjs.org/es5-ext/-/es5-ext-0.10.37.tgz",
@ -1706,9 +1513,9 @@
"dev": true
},
"etag": {
"version": "1.7.0",
"resolved": "https://registry.npmjs.org/etag/-/etag-1.7.0.tgz",
"integrity": "sha1-A9MLX2fdbmMtKUXTDWZScxo01dg="
"version": "1.8.1",
"resolved": "https://registry.npmjs.org/etag/-/etag-1.8.1.tgz",
"integrity": "sha1-Qa4u62XvpiJorr/qg6x9eSmbCIc="
},
"event-emitter": {
"version": "0.3.5",
@ -1777,33 +1584,25 @@
"dev": true
},
"express-session": {
"version": "1.11.3",
"resolved": "https://registry.npmjs.org/express-session/-/express-session-1.11.3.tgz",
"integrity": "sha1-XMmPP1/4Ttg1+Ry/CqvQxxB0AK8=",
"version": "1.15.6",
"resolved": "https://registry.npmjs.org/express-session/-/express-session-1.15.6.tgz",
"integrity": "sha512-r0nrHTCYtAMrFwZ0kBzZEXa1vtPVrw0dKvGSrKP4dahwBQ1BJpF2/y1Pp4sCD/0kvxV4zZeclyvfmw0B4RMJQA==",
"requires": {
"cookie": "0.1.3",
"cookie": "0.3.1",
"cookie-signature": "1.0.6",
"crc": "3.3.0",
"debug": "2.2.0",
"depd": "1.0.1",
"crc": "3.4.4",
"debug": "2.6.9",
"depd": "1.1.2",
"on-headers": "1.0.1",
"parseurl": "1.3.2",
"uid-safe": "2.0.0",
"utils-merge": "1.0.0"
"uid-safe": "2.1.5",
"utils-merge": "1.0.1"
},
"dependencies": {
"cookie": {
"version": "0.1.3",
"resolved": "https://registry.npmjs.org/cookie/-/cookie-0.1.3.tgz",
"integrity": "sha1-5zSlwUF/zkctWu+Cw4HKu2TRpDU="
},
"uid-safe": {
"version": "2.0.0",
"resolved": "https://registry.npmjs.org/uid-safe/-/uid-safe-2.0.0.tgz",
"integrity": "sha1-p/PGymSh9qXQTsDvPkw9U2cxcTc=",
"requires": {
"base64-url": "1.2.1"
}
"version": "0.3.1",
"resolved": "https://registry.npmjs.org/cookie/-/cookie-0.3.1.tgz",
"integrity": "sha1-5+Ch+e9DtMi6klxcWpboBtFoc7s="
}
}
},
@ -1971,21 +1770,17 @@
}
},
"finalhandler": {
"version": "0.4.0",
"resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-0.4.0.tgz",
"integrity": "sha1-llpS2ejQXSuFdUhUH7ibU6JJfZs=",
"version": "1.1.0",
"resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.1.0.tgz",
"integrity": "sha1-zgtoVbRYU+eRsvzGgARtiCU91/U=",
"requires": {
"debug": "2.2.0",
"escape-html": "1.0.2",
"debug": "2.6.9",
"encodeurl": "1.0.2",
"escape-html": "1.0.3",
"on-finished": "2.3.0",
"parseurl": "1.3.2",
"statuses": "1.3.1",
"unpipe": "1.0.0"
},
"dependencies": {
"escape-html": {
"version": "1.0.2",
"resolved": "https://registry.npmjs.org/escape-html/-/escape-html-1.0.2.tgz",
"integrity": "sha1-130y+pjjjC9BroXpJ44ODmuhAiw="
}
}
},
"find-up": {
@ -2043,9 +1838,9 @@
}
},
"fresh": {
"version": "0.3.0",
"resolved": "https://registry.npmjs.org/fresh/-/fresh-0.3.0.tgz",
"integrity": "sha1-ZR+DjiJCTnVm3hYdg1jKoZn4PU8="
"version": "0.5.2",
"resolved": "https://registry.npmjs.org/fresh/-/fresh-0.5.2.tgz",
"integrity": "sha1-PYyt2Q2XZWn6g1qx+OSyOhBWBac="
},
"from2": {
"version": "2.3.0",
@ -2305,12 +2100,21 @@
}
},
"http-errors": {
"version": "1.3.1",
"resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.3.1.tgz",
"integrity": "sha1-GX4izevUGYWF6GlO9nhhl7ke2UI=",
"version": "1.6.3",
"resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.6.3.tgz",
"integrity": "sha1-i1VoC7S+KDoLW/TqLjhYC+HZMg0=",
"requires": {
"depd": "1.1.2",
"inherits": "2.0.3",
"setprototypeof": "1.1.0",
"statuses": "1.5.0"
},
"dependencies": {
"statuses": {
"version": "1.5.0",
"resolved": "https://registry.npmjs.org/statuses/-/statuses-1.5.0.tgz",
"integrity": "sha1-Fhx9rBd2Wf2YEfQ3cfqZOBR4Yow="
}
}
},
"http-signature": {
@ -2761,48 +2565,12 @@
"object-visit": "1.0.1"
}
},
"media-typer": {
"version": "0.3.0",
"resolved": "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz",
"integrity": "sha1-hxDXrwqmJvj/+hzgAWhUUmMlV0g="
},
"merge2": {
"version": "1.2.2",
"resolved": "https://registry.npmjs.org/merge2/-/merge2-1.2.2.tgz",
"integrity": "sha512-bgM8twH86rWni21thii6WCMQMRMmwqqdW3sGWi9IipnVAszdLXRjwDwAnyrVXo6DuP3AjRMMttZKUB48QWIFGg==",
"dev": true
},
"method-override": {
"version": "2.3.10",
"resolved": "https://registry.npmjs.org/method-override/-/method-override-2.3.10.tgz",
"integrity": "sha1-49r41d7hDdLc59SuiNYrvud0drQ=",
"requires": {
"debug": "2.6.9",
"methods": "1.1.2",
"parseurl": "1.3.2",
"vary": "1.1.2"
},
"dependencies": {
"debug": {
"version": "2.6.9",
"resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz",
"integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==",
"requires": {
"ms": "2.0.0"
}
},
"vary": {
"version": "1.1.2",
"resolved": "https://registry.npmjs.org/vary/-/vary-1.1.2.tgz",
"integrity": "sha1-IpnwLG3tMNSllhsLn3RSShj2NPw="
}
}
},
"methods": {
"version": "1.1.2",
"resolved": "https://registry.npmjs.org/methods/-/methods-1.1.2.tgz",
"integrity": "sha1-VSmk1nZUE07cxSZmVoNbD4Ua/O4="
},
"micromatch": {
"version": "3.1.10",
"resolved": "https://registry.npmjs.org/micromatch/-/micromatch-3.1.10.tgz",
@ -2825,9 +2593,9 @@
}
},
"mime": {
"version": "1.3.4",
"resolved": "https://registry.npmjs.org/mime/-/mime-1.3.4.tgz",
"integrity": "sha1-EV+eO2s9rylZmDyzjxSaLUDrXVM="
"version": "1.4.1",
"resolved": "https://registry.npmjs.org/mime/-/mime-1.4.1.tgz",
"integrity": "sha512-KI1+qOZu5DcW6wayYHSzR/tXKCDC5Om4s1z2QJjDULzLcmf3DvzS7oluY4HCTrc+9FiKmWUgeNLg7W3uIQvxtQ=="
},
"mime-db": {
"version": "1.30.0",
@ -3035,55 +2803,11 @@
}
}
},
"morgan": {
"version": "1.6.1",
"resolved": "https://registry.npmjs.org/morgan/-/morgan-1.6.1.tgz",
"integrity": "sha1-X9gYOYxoGcuiinzWZk8pL+HAu/I=",
"requires": {
"basic-auth": "1.0.4",
"debug": "2.2.0",
"depd": "1.0.1",
"on-finished": "2.3.0",
"on-headers": "1.0.1"
}
},
"ms": {
"version": "2.0.0",
"resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz",
"integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g="
},
"multiparty": {
"version": "3.3.2",
"resolved": "https://registry.npmjs.org/multiparty/-/multiparty-3.3.2.tgz",
"integrity": "sha1-Nd5oBNwZZD5SSfPT473GyM4wHT8=",
"requires": {
"readable-stream": "1.1.14",
"stream-counter": "0.2.0"
},
"dependencies": {
"isarray": {
"version": "0.0.1",
"resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz",
"integrity": "sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8="
},
"readable-stream": {
"version": "1.1.14",
"resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.1.14.tgz",
"integrity": "sha1-fPTFTvZI44EwhMY23SB54WbAgdk=",
"requires": {
"core-util-is": "1.0.2",
"inherits": "2.0.3",
"isarray": "0.0.1",
"string_decoder": "0.10.31"
}
},
"string_decoder": {
"version": "0.10.31",
"resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz",
"integrity": "sha1-YuIDvEF2bGwoyfyEMB2rHFMQ+pQ="
}
}
},
"multistream": {
"version": "2.1.1",
"resolved": "https://registry.npmjs.org/multistream/-/multistream-2.1.1.tgz",
@ -3352,11 +3076,6 @@
}
}
},
"pause": {
"version": "0.1.0",
"resolved": "https://registry.npmjs.org/pause/-/pause-0.1.0.tgz",
"integrity": "sha1-68ikqGGf8LioGsFRPDQ0/0af23Q="
},
"performance-now": {
"version": "2.1.0",
"resolved": "https://registry.npmjs.org/performance-now/-/performance-now-2.1.0.tgz",
@ -3587,31 +3306,9 @@
"integrity": "sha1-T2ih3Arli9P7lYSMMDJNt11kNgs="
},
"range-parser": {
"version": "1.0.3",
"resolved": "https://registry.npmjs.org/range-parser/-/range-parser-1.0.3.tgz",
"integrity": "sha1-aHKCNTXGkuLCoBA4Jq/YLC4P8XU="
},
"raw-body": {
"version": "2.1.7",
"resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.1.7.tgz",
"integrity": "sha1-rf6s4uT7MJgFgBTQjActzFl1h3Q=",
"requires": {
"bytes": "2.4.0",
"iconv-lite": "0.4.13",
"unpipe": "1.0.0"
},
"dependencies": {
"bytes": {
"version": "2.4.0",
"resolved": "https://registry.npmjs.org/bytes/-/bytes-2.4.0.tgz",
"integrity": "sha1-fZcZb51br39pNeJZhVSe3SpsIzk="
},
"iconv-lite": {
"version": "0.4.13",
"resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.13.tgz",
"integrity": "sha1-H4irpKsLFQjoMSrMOTRfNumS4vI="
}
}
"version": "1.2.0",
"resolved": "https://registry.npmjs.org/range-parser/-/range-parser-1.2.0.tgz",
"integrity": "sha1-9JvmtIeJTdxA3MlKMi9hEJLgDV4="
},
"readable-stream": {
"version": "2.3.6",
@ -3769,22 +3466,6 @@
"integrity": "sha1-LGN/53yJOv0qZj/iGqkIAGjiBSo=",
"dev": true
},
"response-time": {
"version": "2.3.2",
"resolved": "https://registry.npmjs.org/response-time/-/response-time-2.3.2.tgz",
"integrity": "sha1-/6cbq5UtYvfB1Jt0NDVfvGjf/Fo=",
"requires": {
"depd": "1.1.2",
"on-headers": "1.0.1"
},
"dependencies": {
"depd": {
"version": "1.1.2",
"resolved": "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz",
"integrity": "sha1-m81S4UwJd2PnSbJ0xDRu0uVgtak="
}
}
},
"ret": {
"version": "0.1.15",
"resolved": "https://registry.npmjs.org/ret/-/ret-0.1.15.tgz",
@ -3800,11 +3481,6 @@
"glob": "7.1.2"
}
},
"rndm": {
"version": "1.2.0",
"resolved": "https://registry.npmjs.org/rndm/-/rndm-1.2.0.tgz",
"integrity": "sha1-8z/pz7Urv9UgqhgyO8ZdsRCht2w="
},
"safe-buffer": {
"version": "5.1.1",
"resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.1.tgz",
@ -3833,97 +3509,41 @@
"dev": true
},
"send": {
"version": "0.13.2",
"resolved": "https://registry.npmjs.org/send/-/send-0.13.2.tgz",
"integrity": "sha1-dl52B8gFVFK7pvCwUllTUJhgNt4=",
"version": "0.16.2",
"resolved": "https://registry.npmjs.org/send/-/send-0.16.2.tgz",
"integrity": "sha512-E64YFPUssFHEFBvpbbjr44NCLtI1AohxQ8ZSiJjQLskAdKuriYEP6VyGEsRDH8ScozGpkaX1BGvhanqCwkcEZw==",
"requires": {
"debug": "2.2.0",
"debug": "2.6.9",
"depd": "1.1.2",
"destroy": "1.0.4",
"encodeurl": "1.0.2",
"escape-html": "1.0.3",
"etag": "1.7.0",
"fresh": "0.3.0",
"http-errors": "1.3.1",
"mime": "1.3.4",
"ms": "0.7.1",
"etag": "1.8.1",
"fresh": "0.5.2",
"http-errors": "1.6.3",
"mime": "1.4.1",
"ms": "2.0.0",
"on-finished": "2.3.0",
"range-parser": "1.0.3",
"statuses": "1.2.1"
"range-parser": "1.2.0",
"statuses": "1.4.0"
},
"dependencies": {
"depd": {
"version": "1.1.2",
"resolved": "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz",
"integrity": "sha1-m81S4UwJd2PnSbJ0xDRu0uVgtak="
},
"ms": {
"version": "0.7.1",
"resolved": "https://registry.npmjs.org/ms/-/ms-0.7.1.tgz",
"integrity": "sha1-nNE8A62/8ltl7/3nzoZO6VIBcJg="
},
"statuses": {
"version": "1.2.1",
"resolved": "https://registry.npmjs.org/statuses/-/statuses-1.2.1.tgz",
"integrity": "sha1-3e1FzBglbVHtQK7BQkidXGECbSg="
}
}
},
"serve-favicon": {
"version": "2.3.2",
"resolved": "https://registry.npmjs.org/serve-favicon/-/serve-favicon-2.3.2.tgz",
"integrity": "sha1-3UGeJo3gEqtysxnTN/IQUBP5OB8=",
"requires": {
"etag": "1.7.0",
"fresh": "0.3.0",
"ms": "0.7.2",
"parseurl": "1.3.2"
},
"dependencies": {
"ms": {
"version": "0.7.2",
"resolved": "https://registry.npmjs.org/ms/-/ms-0.7.2.tgz",
"integrity": "sha1-riXPJRKziFodldfwN4aNhDESR2U="
}
}
},
"serve-index": {
"version": "1.7.3",
"resolved": "https://registry.npmjs.org/serve-index/-/serve-index-1.7.3.tgz",
"integrity": "sha1-egV/xu4o3GP2RWbl+lexEahq7NI=",
"requires": {
"accepts": "1.2.13",
"batch": "0.5.3",
"debug": "2.2.0",
"escape-html": "1.0.3",
"http-errors": "1.3.1",
"mime-types": "2.1.17",
"parseurl": "1.3.2"
},
"dependencies": {
"accepts": {
"version": "1.2.13",
"resolved": "https://registry.npmjs.org/accepts/-/accepts-1.2.13.tgz",
"integrity": "sha1-5fHzkoxtlf2WVYw27D2dDeSm7Oo=",
"requires": {
"mime-types": "2.1.17",
"negotiator": "0.5.3"
}
},
"negotiator": {
"version": "0.5.3",
"resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.5.3.tgz",
"integrity": "sha1-Jp1cR2gQ7JLtvntsLygxY4T5p+g="
"version": "1.4.0",
"resolved": "https://registry.npmjs.org/statuses/-/statuses-1.4.0.tgz",
"integrity": "sha512-zhSCtt8v2NDrRlPQpCNtw/heZLtfUDqxBM1udqikb/Hbk52LK4nQSwr10u77iopCW5LsyHpuXS0GnEc48mLeew=="
}
}
},
"serve-static": {
"version": "1.10.3",
"resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.10.3.tgz",
"integrity": "sha1-zlpuzTEB/tXsCYJ9rCKpwpv7BTU=",
"version": "1.13.2",
"resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.13.2.tgz",
"integrity": "sha512-p/tdJrO4U387R9oMjb1oj7qSMaMfmOyd4j9hOFoxZe2baQszgHcSWjuya/CiT5kgZZKRudHNOA0pYXOl8rQ5nw==",
"requires": {
"encodeurl": "1.0.2",
"escape-html": "1.0.3",
"parseurl": "1.3.2",
"send": "0.13.2"
"send": "0.16.2"
}
},
"set-value": {
@ -3949,6 +3569,11 @@
}
}
},
"setprototypeof": {
"version": "1.1.0",
"resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.1.0.tgz",
"integrity": "sha512-BvE/TwpZX4FXExxOxZyRGQQv651MSwmWKZGqvmPcRIjDqWub67kTKuIMx43cZZrS/cBBzwBcNDWoFxt2XEFIpQ=="
},
"shelljs": {
"version": "0.7.8",
"resolved": "https://registry.npmjs.org/shelljs/-/shelljs-0.7.8.tgz",
@ -4328,40 +3953,9 @@
}
},
"statuses": {
"version": "1.5.0",
"resolved": "https://registry.npmjs.org/statuses/-/statuses-1.5.0.tgz",
"integrity": "sha1-Fhx9rBd2Wf2YEfQ3cfqZOBR4Yow="
},
"stream-counter": {
"version": "0.2.0",
"resolved": "https://registry.npmjs.org/stream-counter/-/stream-counter-0.2.0.tgz",
"integrity": "sha1-3tJmVWMZyLDiIoErnPOyb6fZR94=",
"requires": {
"readable-stream": "1.1.14"
},
"dependencies": {
"isarray": {
"version": "0.0.1",
"resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz",
"integrity": "sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8="
},
"readable-stream": {
"version": "1.1.14",
"resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.1.14.tgz",
"integrity": "sha1-fPTFTvZI44EwhMY23SB54WbAgdk=",
"requires": {
"core-util-is": "1.0.2",
"inherits": "2.0.3",
"isarray": "0.0.1",
"string_decoder": "0.10.31"
}
},
"string_decoder": {
"version": "0.10.31",
"resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz",
"integrity": "sha1-YuIDvEF2bGwoyfyEMB2rHFMQ+pQ="
}
}
"version": "1.3.1",
"resolved": "https://registry.npmjs.org/statuses/-/statuses-1.3.1.tgz",
"integrity": "sha1-+vUbnrdKrvOzrPStX2Gr8ky3uT4="
},
"stream-meter": {
"version": "1.0.4",
@ -4599,11 +4193,6 @@
"integrity": "sha1-gYT9NH2snNwYWZLzpmIuFLnZq2o=",
"dev": true
},
"tsscmp": {
"version": "1.0.5",
"resolved": "https://registry.npmjs.org/tsscmp/-/tsscmp-1.0.5.tgz",
"integrity": "sha1-fcSjOvcVgatDN9qR2FylQn69mpc="
},
"tunnel-agent": {
"version": "0.6.0",
"resolved": "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.6.0.tgz",
@ -4629,30 +4218,6 @@
"prelude-ls": "1.1.2"
}
},
"type-is": {
"version": "1.6.16",
"resolved": "https://registry.npmjs.org/type-is/-/type-is-1.6.16.tgz",
"integrity": "sha512-HRkVv/5qY2G6I8iab9cI7v1bOIdhm94dVjQCPFElW9W+3GeDOSHmy2EBYe4VTApuzolPcmgFTN3ftVJRKR2J9Q==",
"requires": {
"media-typer": "0.3.0",
"mime-types": "2.1.19"
},
"dependencies": {
"mime-db": {
"version": "1.35.0",
"resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.35.0.tgz",
"integrity": "sha512-JWT/IcCTsB0Io3AhWUMjRqucrHSPsSf2xKLaRldJVULioggvkJvggZ3VXNNSRkCddE6D+BUI4HEIZIA2OjwIvg=="
},
"mime-types": {
"version": "2.1.19",
"resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.19.tgz",
"integrity": "sha512-P1tKYHVSZ6uFo26mtnve4HQFE3koh1UWVkp8YUC+ESBHe945xWSoXuHHiGarDqcEZ+whpCDnlNw5LON0kLo+sw==",
"requires": {
"mime-db": "1.35.0"
}
}
}
},
"typedarray": {
"version": "0.0.6",
"resolved": "https://registry.npmjs.org/typedarray/-/typedarray-0.0.6.tgz",
@ -4660,9 +4225,9 @@
"dev": true
},
"uid-safe": {
"version": "2.1.4",
"resolved": "https://registry.npmjs.org/uid-safe/-/uid-safe-2.1.4.tgz",
"integrity": "sha1-Otbzg2jG1MjHXsF2I/t5qh0HHYE=",
"version": "2.1.5",
"resolved": "https://registry.npmjs.org/uid-safe/-/uid-safe-2.1.5.tgz",
"integrity": "sha512-KPHm4VL5dDXKz01UuEd88Df+KzynaohSL9fBh096KWAxSKZQDI2uBrVqtvRM4rwrIrRRKsdLNML/lnaaVSRioA==",
"requires": {
"random-bytes": "1.0.0"
}
@ -4808,9 +4373,9 @@
"dev": true
},
"utils-merge": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/utils-merge/-/utils-merge-1.0.0.tgz",
"integrity": "sha1-ApT7kiu5N1FTVBxPcJYjHyh8ivg="
"version": "1.0.1",
"resolved": "https://registry.npmjs.org/utils-merge/-/utils-merge-1.0.1.tgz",
"integrity": "sha1-n5VxD1CiZ5R7LMwSR0HBAoQn5xM="
},
"uuid": {
"version": "3.1.0",
@ -4818,11 +4383,6 @@
"integrity": "sha512-DIWtzUkw04M4k3bf1IcpS2tngXEL26YUD2M0tMDUpnUrz2hgzUBlD55a4FjdLGPvfHxS6uluGWvaVEqgBcVa+g==",
"dev": true
},
"vary": {
"version": "1.0.1",
"resolved": "https://registry.npmjs.org/vary/-/vary-1.0.1.tgz",
"integrity": "sha1-meSYFWaihhGN+yuBc1ffeZM3bRA="
},
"verror": {
"version": "1.10.0",
"resolved": "https://registry.npmjs.org/verror/-/verror-1.10.0.tgz",
@ -4834,11 +4394,6 @@
"extsprintf": "1.3.0"
}
},
"vhost": {
"version": "3.0.2",
"resolved": "https://registry.npmjs.org/vhost/-/vhost-3.0.2.tgz",
"integrity": "sha1-L7HezUxGaqiLD5NBrzPcGv8keNU="
},
"webidl-conversions": {
"version": "4.0.2",
"resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-4.0.2.tgz",

View File

@ -8,11 +8,15 @@
"bin": "./bin/frontail",
"dependencies": {
"CBuffer": "0.1.4",
"basic-auth-connect": "^1.0.0",
"byline": "^5.0.0",
"commander": "1.3.2",
"connect": "2.30.2",
"connect": "3.6.6",
"cookie": "0.1.0",
"cookie-parser": "^1.4.3",
"daemon-fix41": "1.1.2",
"express-session": "^1.15.6",
"serve-static": "^1.13.2",
"socket.io": "^1.7.0",
"untildify": "^3.0.2"
},

View File

@ -41,7 +41,7 @@ describe('connectBuilder', () => {
it('should build app that setup session', (done) => {
const app = connectBuilder('/')
.session('secret', 'sessionkey')
.session('secret')
.build();
app.use((req, res) => {
res.end();
@ -49,7 +49,7 @@ describe('connectBuilder', () => {
request(app)
.get('/')
.expect('set-cookie', /^sessionkey/, done);
.expect('set-cookie', /^connect.sid/, done);
});
it('should build app that serve static files', (done) => {