提交 41530fda3e78013ba9b42fa1246bf7aa98240d68

作者 fanwh
1 个父辈 18cf518c

aaa

... ... @@ -79,6 +79,8 @@ var app = bootable(express());
79 79
80 80 app.phase(bootable.di.initializers());
81 81
  82 +app.phase(bootable.di.routes('./routes/index.js'));
  83 +
82 84 app.boot(function (err) {
83 85
84 86 if (err) {
... ...
... ... @@ -5,7 +5,7 @@ exports = module.exports = function () {
5 5 return {
6 6 server: {
7 7 host: '0.0.0.0',
8   - port: 3000,
  8 + port: 3100,
9 9 env: 'development',
10 10 dir: path.join(serviceDir, 'public'),
11 11 engine: 'ejs',
... ... @@ -26,10 +26,10 @@ exports = module.exports = function () {
26 26 output: {
27 27
28 28 },
29   - cookieParser: 'igloo-change-me',
  29 + cookieParser: 'igloo-change-one',
30 30 session: {
31   - secret: 'igloo-change-me',
32   - key: 'igloo',
  31 + secret: 'igloo-change-one',
  32 + key: 'igloo-one',
33 33 cookie: {
34 34 path: '/',
35 35 httpOnly: true,
... ... @@ -39,6 +39,12 @@ exports = module.exports = function () {
39 39 },
40 40 resave: true,
41 41 saveUninitialized: true
  42 + },
  43 + localStrategy: {
  44 + usernameField: 'username',
  45 + passwordField: 'password',
  46 + // session: false,
  47 + passReqToCallback: true
42 48 },
43 49 notApiRouteRegexp: /^(?!\/__webpack_hmr\/)|(?!\/*.ico).*$/,
44 50 redis: {
... ...
... ... @@ -2,6 +2,8 @@
2 2 // # sessions
3 3 var session = require('express-session');
4 4 var cookieParser = require('cookie-parser');
  5 +var passport = require('passport');
  6 +var LocalStrategy = require('passport-local').Strategy;
5 7
6 8 exports = module.exports = function (settings, sessions) {
7 9
... ... @@ -15,6 +17,21 @@ exports = module.exports = function (settings, sessions) {
15 17
16 18 // add flash message support
17 19 app.use(session(settings.session));
  20 +
  21 + app.use(passport.initialize());
  22 + app.use(passport.session());
  23 +
  24 + //// add passport strategies
  25 + passport.use(new LocalStrategy(settings.localStrategy,function(req, username, password, done){
  26 + console.log("@@@@@",username,password)
  27 + done(null,{user:'aaaaaa'});
  28 + }));
  29 + passport.serializeUser(function(user, done){
  30 + done(null, {});
  31 + });
  32 + passport.deserializeUser(function(user, done){
  33 + done(null, {});
  34 + });
18 35 };
19 36
20 37 exports['@require'] = ['igloo/settings', 'igloo/sessions'];
... ...
  1 +{
  2 + "name": "workai-express",
  3 + "version": "0.0.2",
  4 + "lockfileVersion": 1,
  5 + "requires": true,
  6 + "dependencies": {
  7 + "accepts": {
  8 + "version": "1.3.7",
  9 + "resolved": "https://registry.npm.taobao.org/accepts/download/accepts-1.3.7.tgz",
  10 + "integrity": "sha1-UxvHJlF6OytB+FACHGzBXqq1B80=",
  11 + "requires": {
  12 + "mime-types": "~2.1.24",
  13 + "negotiator": "0.6.2"
  14 + }
  15 + },
  16 + "array-flatten": {
  17 + "version": "1.1.1",
  18 + "resolved": "http://registry.npm.taobao.org/array-flatten/download/array-flatten-1.1.1.tgz",
  19 + "integrity": "sha1-ml9pkFGx5wczKPKgCJaLZOopVdI="
  20 + },
  21 + "asap": {
  22 + "version": "2.0.6",
  23 + "resolved": "http://registry.npm.taobao.org/asap/download/asap-2.0.6.tgz",
  24 + "integrity": "sha1-5QNHYR1+aQlDIIu9r+vLwvuGbUY="
  25 + },
  26 + "async": {
  27 + "version": "2.6.3",
  28 + "resolved": "https://registry.npm.taobao.org/async/download/async-2.6.3.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fasync%2Fdownload%2Fasync-2.6.3.tgz",
  29 + "integrity": "sha1-1yYl4jRKNlbjo61Pp0n6gymdgv8=",
  30 + "requires": {
  31 + "lodash": "^4.17.14"
  32 + }
  33 + },
  34 + "asyncawait": {
  35 + "version": "1.0.8",
  36 + "resolved": "https://registry.npm.taobao.org/asyncawait/download/asyncawait-1.0.8.tgz",
  37 + "integrity": "sha1-7NJdaNhwrDbNljOPhE4qTS77ckI=",
  38 + "requires": {
  39 + "bluebird": "^3.1.1",
  40 + "fibers": "^2.0.2",
  41 + "lodash": "^4.17.11"
  42 + }
  43 + },
  44 + "basic-auth": {
  45 + "version": "1.0.4",
  46 + "resolved": "http://registry.npm.taobao.org/basic-auth/download/basic-auth-1.0.4.tgz",
  47 + "integrity": "sha1-Awk1sB3nyblKgksp8/zLdQ06UpA="
  48 + },
  49 + "bluebird": {
  50 + "version": "3.7.1",
  51 + "resolved": "https://registry.npm.taobao.org/bluebird/download/bluebird-3.7.1.tgz?cache=0&sync_timestamp=1571131592306&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fbluebird%2Fdownload%2Fbluebird-3.7.1.tgz",
  52 + "integrity": "sha1-33DjArRx10c0iazyapPWO1P4dN4="
  53 + },
  54 + "body-parser": {
  55 + "version": "1.19.0",
  56 + "resolved": "https://registry.npm.taobao.org/body-parser/download/body-parser-1.19.0.tgz",
  57 + "integrity": "sha1-lrJwnlfJxOCab9Zqj9l5hE9p8Io=",
  58 + "requires": {
  59 + "bytes": "3.1.0",
  60 + "content-type": "~1.0.4",
  61 + "debug": "2.6.9",
  62 + "depd": "~1.1.2",
  63 + "http-errors": "1.7.2",
  64 + "iconv-lite": "0.4.24",
  65 + "on-finished": "~2.3.0",
  66 + "qs": "6.7.0",
  67 + "raw-body": "2.4.0",
  68 + "type-is": "~1.6.17"
  69 + },
  70 + "dependencies": {
  71 + "debug": {
  72 + "version": "2.6.9",
  73 + "resolved": "http://registry.npm.taobao.org/debug/download/debug-2.6.9.tgz",
  74 + "integrity": "sha1-XRKFFd8TT/Mn6QpMk/Tgd6U2NB8=",
  75 + "requires": {
  76 + "ms": "2.0.0"
  77 + }
  78 + }
  79 + }
  80 + },
  81 + "bytes": {
  82 + "version": "3.1.0",
  83 + "resolved": "http://registry.npm.taobao.org/bytes/download/bytes-3.1.0.tgz",
  84 + "integrity": "sha1-9s95M6Ng4FiPqf3oVlHNx/gF0fY="
  85 + },
  86 + "canonical-path": {
  87 + "version": "0.0.2",
  88 + "resolved": "https://registry.npm.taobao.org/canonical-path/download/canonical-path-0.0.2.tgz",
  89 + "integrity": "sha1-4x65N6jJPuKgHfGDl5RyGQKHRXQ="
  90 + },
  91 + "cluster": {
  92 + "version": "0.7.7",
  93 + "resolved": "https://registry.npm.taobao.org/cluster/download/cluster-0.7.7.tgz",
  94 + "integrity": "sha1-5JfiZ8yVa9CwUTrbSqOTNX0Ahe8=",
  95 + "requires": {
  96 + "log": ">= 1.2.0",
  97 + "mkdirp": ">= 0.0.1"
  98 + }
  99 + },
  100 + "color": {
  101 + "version": "3.0.0",
  102 + "resolved": "https://registry.npm.taobao.org/color/download/color-3.0.0.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fcolor%2Fdownload%2Fcolor-3.0.0.tgz",
  103 + "integrity": "sha1-2SC0Mo1TSjrIKV1o971LpsQnvpo=",
  104 + "requires": {
  105 + "color-convert": "^1.9.1",
  106 + "color-string": "^1.5.2"
  107 + }
  108 + },
  109 + "color-convert": {
  110 + "version": "1.9.3",
  111 + "resolved": "https://registry.npm.taobao.org/color-convert/download/color-convert-1.9.3.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fcolor-convert%2Fdownload%2Fcolor-convert-1.9.3.tgz",
  112 + "integrity": "sha1-u3GFBpDh8TZWfeYp0tVHHe2kweg=",
  113 + "requires": {
  114 + "color-name": "1.1.3"
  115 + }
  116 + },
  117 + "color-name": {
  118 + "version": "1.1.3",
  119 + "resolved": "http://registry.npm.taobao.org/color-name/download/color-name-1.1.3.tgz",
  120 + "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU="
  121 + },
  122 + "color-string": {
  123 + "version": "1.5.3",
  124 + "resolved": "http://registry.npm.taobao.org/color-string/download/color-string-1.5.3.tgz",
  125 + "integrity": "sha1-ybvF8BtYtUkvPWhXRZy2WQziBMw=",
  126 + "requires": {
  127 + "color-name": "^1.0.0",
  128 + "simple-swizzle": "^0.2.2"
  129 + }
  130 + },
  131 + "colornames": {
  132 + "version": "1.1.1",
  133 + "resolved": "https://registry.npm.taobao.org/colornames/download/colornames-1.1.1.tgz",
  134 + "integrity": "sha1-+IiQMGhcfE/54qVZ9Qd+t2qBb5Y="
  135 + },
  136 + "colors": {
  137 + "version": "1.4.0",
  138 + "resolved": "https://registry.npm.taobao.org/colors/download/colors-1.4.0.tgz",
  139 + "integrity": "sha1-xQSRR51MG9rtLJztMs98fcI2D3g="
  140 + },
  141 + "colorspace": {
  142 + "version": "1.1.2",
  143 + "resolved": "https://registry.npm.taobao.org/colorspace/download/colorspace-1.1.2.tgz",
  144 + "integrity": "sha1-4BKJUNCCuGohaFgHlqCqXWxo2MU=",
  145 + "requires": {
  146 + "color": "3.0.x",
  147 + "text-hex": "1.0.x"
  148 + }
  149 + },
  150 + "compressible": {
  151 + "version": "2.0.17",
  152 + "resolved": "https://registry.npm.taobao.org/compressible/download/compressible-2.0.17.tgz",
  153 + "integrity": "sha1-bowQihatWDhKl386SCyiC/8vOME=",
  154 + "requires": {
  155 + "mime-db": ">= 1.40.0 < 2"
  156 + }
  157 + },
  158 + "compression": {
  159 + "version": "1.7.4",
  160 + "resolved": "https://registry.npm.taobao.org/compression/download/compression-1.7.4.tgz",
  161 + "integrity": "sha1-lVI+/xcMpXwpoMpB5v4TH0Hlu48=",
  162 + "requires": {
  163 + "accepts": "~1.3.5",
  164 + "bytes": "3.0.0",
  165 + "compressible": "~2.0.16",
  166 + "debug": "2.6.9",
  167 + "on-headers": "~1.0.2",
  168 + "safe-buffer": "5.1.2",
  169 + "vary": "~1.1.2"
  170 + },
  171 + "dependencies": {
  172 + "bytes": {
  173 + "version": "3.0.0",
  174 + "resolved": "http://registry.npm.taobao.org/bytes/download/bytes-3.0.0.tgz",
  175 + "integrity": "sha1-0ygVQE1olpn4Wk6k+odV3ROpYEg="
  176 + },
  177 + "debug": {
  178 + "version": "2.6.9",
  179 + "resolved": "http://registry.npm.taobao.org/debug/download/debug-2.6.9.tgz",
  180 + "integrity": "sha1-XRKFFd8TT/Mn6QpMk/Tgd6U2NB8=",
  181 + "requires": {
  182 + "ms": "2.0.0"
  183 + }
  184 + }
  185 + }
  186 + },
  187 + "connect-redis": {
  188 + "version": "3.4.2",
  189 + "resolved": "https://registry.npm.taobao.org/connect-redis/download/connect-redis-3.4.2.tgz",
  190 + "integrity": "sha1-4zn9CwDhOB4TAQFVZldmnMhVQX4=",
  191 + "requires": {
  192 + "debug": "^4.1.1",
  193 + "redis": "^2.8.0"
  194 + }
  195 + },
  196 + "content-disposition": {
  197 + "version": "0.5.1",
  198 + "resolved": "http://registry.npm.taobao.org/content-disposition/download/content-disposition-0.5.1.tgz",
  199 + "integrity": "sha1-h0dsamfI2qh+Muh2Ft+IO6f7Bxs="
  200 + },
  201 + "content-type": {
  202 + "version": "1.0.4",
  203 + "resolved": "http://registry.npm.taobao.org/content-type/download/content-type-1.0.4.tgz",
  204 + "integrity": "sha1-4TjMdeBAxyexlm/l5fjJruJW/js="
  205 + },
  206 + "cookie": {
  207 + "version": "0.1.3",
  208 + "resolved": "https://registry.npm.taobao.org/cookie/download/cookie-0.1.3.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fcookie%2Fdownload%2Fcookie-0.1.3.tgz",
  209 + "integrity": "sha1-5zSlwUF/zkctWu+Cw4HKu2TRpDU="
  210 + },
  211 + "cookie-parser": {
  212 + "version": "1.3.5",
  213 + "resolved": "https://registry.npm.taobao.org/cookie-parser/download/cookie-parser-1.3.5.tgz",
  214 + "integrity": "sha1-nXVVcPtdF4kHcSJ6AjFNm+fPg1Y=",
  215 + "requires": {
  216 + "cookie": "0.1.3",
  217 + "cookie-signature": "1.0.6"
  218 + }
  219 + },
  220 + "cookie-signature": {
  221 + "version": "1.0.6",
  222 + "resolved": "http://registry.npm.taobao.org/cookie-signature/download/cookie-signature-1.0.6.tgz",
  223 + "integrity": "sha1-4wOogrNCzD7oylE6eZmXNNqzriw="
  224 + },
  225 + "core-util-is": {
  226 + "version": "1.0.2",
  227 + "resolved": "http://registry.npm.taobao.org/core-util-is/download/core-util-is-1.0.2.tgz",
  228 + "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac="
  229 + },
  230 + "d": {
  231 + "version": "1.0.1",
  232 + "resolved": "https://registry.npm.taobao.org/d/download/d-1.0.1.tgz?cache=0&sync_timestamp=1560529642619&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fd%2Fdownload%2Fd-1.0.1.tgz",
  233 + "integrity": "sha1-hpgJU3LVjb7jRv/Qxwk/mfj561o=",
  234 + "requires": {
  235 + "es5-ext": "^0.10.50",
  236 + "type": "^1.0.1"
  237 + }
  238 + },
  239 + "debug": {
  240 + "version": "4.1.1",
  241 + "resolved": "http://registry.npm.taobao.org/debug/download/debug-4.1.1.tgz",
  242 + "integrity": "sha1-O3ImAlUQnGtYnO4FDx1RYTlmR5E=",
  243 + "requires": {
  244 + "ms": "^2.1.1"
  245 + },
  246 + "dependencies": {
  247 + "ms": {
  248 + "version": "2.1.2",
  249 + "resolved": "https://registry.npm.taobao.org/ms/download/ms-2.1.2.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fms%2Fdownload%2Fms-2.1.2.tgz",
  250 + "integrity": "sha1-0J0fNXtEP0kzgqjrPM0YOHKuYAk="
  251 + }
  252 + }
  253 + },
  254 + "depd": {
  255 + "version": "1.1.2",
  256 + "resolved": "http://registry.npm.taobao.org/depd/download/depd-1.1.2.tgz",
  257 + "integrity": "sha1-m81S4UwJd2PnSbJ0xDRu0uVgtak="
  258 + },
  259 + "destroy": {
  260 + "version": "1.0.4",
  261 + "resolved": "http://registry.npm.taobao.org/destroy/download/destroy-1.0.4.tgz",
  262 + "integrity": "sha1-l4hXRCxEdJ5CBmE+N5RiBYJqvYA="
  263 + },
  264 + "diagnostics": {
  265 + "version": "1.1.1",
  266 + "resolved": "https://registry.npm.taobao.org/diagnostics/download/diagnostics-1.1.1.tgz",
  267 + "integrity": "sha1-yrasM99wydmnJ0kK5DrJladpsio=",
  268 + "requires": {
  269 + "colorspace": "1.1.x",
  270 + "enabled": "1.0.x",
  271 + "kuler": "1.0.x"
  272 + }
  273 + },
  274 + "double-ended-queue": {
  275 + "version": "2.1.0-0",
  276 + "resolved": "https://registry.npm.taobao.org/double-ended-queue/download/double-ended-queue-2.1.0-0.tgz",
  277 + "integrity": "sha1-ED01J/0xUo9AGIEwyEHv3XgmTlw="
  278 + },
  279 + "duration": {
  280 + "version": "0.2.2",
  281 + "resolved": "https://registry.npm.taobao.org/duration/download/duration-0.2.2.tgz",
  282 + "integrity": "sha1-3fFJvDvGkBFQ/pAXER0BazNX9Sk=",
  283 + "requires": {
  284 + "d": "1",
  285 + "es5-ext": "~0.10.46"
  286 + }
  287 + },
  288 + "ee-first": {
  289 + "version": "1.1.1",
  290 + "resolved": "http://registry.npm.taobao.org/ee-first/download/ee-first-1.1.1.tgz",
  291 + "integrity": "sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0="
  292 + },
  293 + "ejs": {
  294 + "version": "2.3.4",
  295 + "resolved": "https://registry.npm.taobao.org/ejs/download/ejs-2.3.4.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fejs%2Fdownload%2Fejs-2.3.4.tgz",
  296 + "integrity": "sha1-PHbKoJZks1g7ADevncE2557Gi5g="
  297 + },
  298 + "electrolyte": {
  299 + "version": "0.5.1",
  300 + "resolved": "https://registry.npm.taobao.org/electrolyte/download/electrolyte-0.5.1.tgz",
  301 + "integrity": "sha1-c1AOdJT327z0tB7pv1K/JPXCTJ4=",
  302 + "requires": {
  303 + "canonical-path": "0.0.2",
  304 + "debug": "^2.2.0",
  305 + "depd": "^1.0.1",
  306 + "promise": "^7.1.1",
  307 + "scripts": "0.1.x"
  308 + },
  309 + "dependencies": {
  310 + "debug": {
  311 + "version": "2.6.9",
  312 + "resolved": "http://registry.npm.taobao.org/debug/download/debug-2.6.9.tgz",
  313 + "integrity": "sha1-XRKFFd8TT/Mn6QpMk/Tgd6U2NB8=",
  314 + "requires": {
  315 + "ms": "2.0.0"
  316 + }
  317 + }
  318 + }
  319 + },
  320 + "enabled": {
  321 + "version": "1.0.2",
  322 + "resolved": "https://registry.npm.taobao.org/enabled/download/enabled-1.0.2.tgz",
  323 + "integrity": "sha1-ll9lE9LC0cX0ZStkouM5ZGf8L5M=",
  324 + "requires": {
  325 + "env-variable": "0.0.x"
  326 + }
  327 + },
  328 + "encodeurl": {
  329 + "version": "1.0.2",
  330 + "resolved": "http://registry.npm.taobao.org/encodeurl/download/encodeurl-1.0.2.tgz",
  331 + "integrity": "sha1-rT/0yG7C0CkyL1oCw6mmBslbP1k="
  332 + },
  333 + "env-variable": {
  334 + "version": "0.0.5",
  335 + "resolved": "https://registry.npm.taobao.org/env-variable/download/env-variable-0.0.5.tgz",
  336 + "integrity": "sha1-kT3YML7xHpagOcA41BMGBOujf4g="
  337 + },
  338 + "es5-ext": {
  339 + "version": "0.10.52",
  340 + "resolved": "https://registry.npm.taobao.org/es5-ext/download/es5-ext-0.10.52.tgz?cache=0&sync_timestamp=1572342473305&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fes5-ext%2Fdownload%2Fes5-ext-0.10.52.tgz",
  341 + "integrity": "sha1-uyF3fpGaBCY3Nt7RIKnWZfEOpj8=",
  342 + "requires": {
  343 + "es6-iterator": "~2.0.3",
  344 + "es6-symbol": "~3.1.2",
  345 + "next-tick": "~1.0.0"
  346 + }
  347 + },
  348 + "es6-iterator": {
  349 + "version": "2.0.3",
  350 + "resolved": "http://registry.npm.taobao.org/es6-iterator/download/es6-iterator-2.0.3.tgz",
  351 + "integrity": "sha1-p96IkUGgWpSwhUQDstCg+/qY87c=",
  352 + "requires": {
  353 + "d": "1",
  354 + "es5-ext": "^0.10.35",
  355 + "es6-symbol": "^3.1.1"
  356 + }
  357 + },
  358 + "es6-symbol": {
  359 + "version": "3.1.3",
  360 + "resolved": "https://registry.npm.taobao.org/es6-symbol/download/es6-symbol-3.1.3.tgz",
  361 + "integrity": "sha1-utXTwbzawoJp9MszHkMceKxwXRg=",
  362 + "requires": {
  363 + "d": "^1.0.1",
  364 + "ext": "^1.1.2"
  365 + }
  366 + },
  367 + "escape-html": {
  368 + "version": "1.0.3",
  369 + "resolved": "http://registry.npm.taobao.org/escape-html/download/escape-html-1.0.3.tgz",
  370 + "integrity": "sha1-Aljq5NPQwJdN4cFpGI7wBR0dGYg="
  371 + },
  372 + "etag": {
  373 + "version": "1.7.0",
  374 + "resolved": "http://registry.npm.taobao.org/etag/download/etag-1.7.0.tgz",
  375 + "integrity": "sha1-A9MLX2fdbmMtKUXTDWZScxo01dg="
  376 + },
  377 + "event-emitter": {
  378 + "version": "0.3.5",
  379 + "resolved": "http://registry.npm.taobao.org/event-emitter/download/event-emitter-0.3.5.tgz",
  380 + "integrity": "sha1-34xp7vFkeSPHFXuc6DhAYQsCzDk=",
  381 + "requires": {
  382 + "d": "1",
  383 + "es5-ext": "~0.10.14"
  384 + }
  385 + },
  386 + "express": {
  387 + "version": "4.13.4",
  388 + "resolved": "https://registry.npm.taobao.org/express/download/express-4.13.4.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fexpress%2Fdownload%2Fexpress-4.13.4.tgz",
  389 + "integrity": "sha1-PAt288d1kMg0VzkGHsC9O6Bn7CQ=",
  390 + "requires": {
  391 + "accepts": "~1.2.12",
  392 + "array-flatten": "1.1.1",
  393 + "content-disposition": "0.5.1",
  394 + "content-type": "~1.0.1",
  395 + "cookie": "0.1.5",
  396 + "cookie-signature": "1.0.6",
  397 + "debug": "~2.2.0",
  398 + "depd": "~1.1.0",
  399 + "escape-html": "~1.0.3",
  400 + "etag": "~1.7.0",
  401 + "finalhandler": "0.4.1",
  402 + "fresh": "0.3.0",
  403 + "merge-descriptors": "1.0.1",
  404 + "methods": "~1.1.2",
  405 + "on-finished": "~2.3.0",
  406 + "parseurl": "~1.3.1",
  407 + "path-to-regexp": "0.1.7",
  408 + "proxy-addr": "~1.0.10",
  409 + "qs": "4.0.0",
  410 + "range-parser": "~1.0.3",
  411 + "send": "0.13.1",
  412 + "serve-static": "~1.10.2",
  413 + "type-is": "~1.6.6",
  414 + "utils-merge": "1.0.0",
  415 + "vary": "~1.0.1"
  416 + },
  417 + "dependencies": {
  418 + "accepts": {
  419 + "version": "1.2.13",
  420 + "resolved": "https://registry.npm.taobao.org/accepts/download/accepts-1.2.13.tgz",
  421 + "integrity": "sha1-5fHzkoxtlf2WVYw27D2dDeSm7Oo=",
  422 + "requires": {
  423 + "mime-types": "~2.1.6",
  424 + "negotiator": "0.5.3"
  425 + }
  426 + },
  427 + "cookie": {
  428 + "version": "0.1.5",
  429 + "resolved": "https://registry.npm.taobao.org/cookie/download/cookie-0.1.5.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fcookie%2Fdownload%2Fcookie-0.1.5.tgz",
  430 + "integrity": "sha1-armUiksa4hlSzSWIUwpHItQETXw="
  431 + },
  432 + "debug": {
  433 + "version": "2.2.0",
  434 + "resolved": "http://registry.npm.taobao.org/debug/download/debug-2.2.0.tgz",
  435 + "integrity": "sha1-+HBX6ZWxofauaklgZkE3vFbwOdo=",
  436 + "requires": {
  437 + "ms": "0.7.1"
  438 + }
  439 + },
  440 + "http-errors": {
  441 + "version": "1.3.1",
  442 + "resolved": "https://registry.npm.taobao.org/http-errors/download/http-errors-1.3.1.tgz?cache=0&sync_timestamp=1561418526117&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fhttp-errors%2Fdownload%2Fhttp-errors-1.3.1.tgz",
  443 + "integrity": "sha1-GX4izevUGYWF6GlO9nhhl7ke2UI=",
  444 + "requires": {
  445 + "inherits": "~2.0.1",
  446 + "statuses": "1"
  447 + }
  448 + },
  449 + "ms": {
  450 + "version": "0.7.1",
  451 + "resolved": "https://registry.npm.taobao.org/ms/download/ms-0.7.1.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fms%2Fdownload%2Fms-0.7.1.tgz",
  452 + "integrity": "sha1-nNE8A62/8ltl7/3nzoZO6VIBcJg="
  453 + },
  454 + "negotiator": {
  455 + "version": "0.5.3",
  456 + "resolved": "https://registry.npm.taobao.org/negotiator/download/negotiator-0.5.3.tgz",
  457 + "integrity": "sha1-Jp1cR2gQ7JLtvntsLygxY4T5p+g="
  458 + },
  459 + "qs": {
  460 + "version": "4.0.0",
  461 + "resolved": "https://registry.npm.taobao.org/qs/download/qs-4.0.0.tgz",
  462 + "integrity": "sha1-wx2bdOwn33XlQ6hseHKO2NRiNgc="
  463 + },
  464 + "serve-static": {
  465 + "version": "1.10.3",
  466 + "resolved": "https://registry.npm.taobao.org/serve-static/download/serve-static-1.10.3.tgz",
  467 + "integrity": "sha1-zlpuzTEB/tXsCYJ9rCKpwpv7BTU=",
  468 + "requires": {
  469 + "escape-html": "~1.0.3",
  470 + "parseurl": "~1.3.1",
  471 + "send": "0.13.2"
  472 + },
  473 + "dependencies": {
  474 + "send": {
  475 + "version": "0.13.2",
  476 + "resolved": "https://registry.npm.taobao.org/send/download/send-0.13.2.tgz",
  477 + "integrity": "sha1-dl52B8gFVFK7pvCwUllTUJhgNt4=",
  478 + "requires": {
  479 + "debug": "~2.2.0",
  480 + "depd": "~1.1.0",
  481 + "destroy": "~1.0.4",
  482 + "escape-html": "~1.0.3",
  483 + "etag": "~1.7.0",
  484 + "fresh": "0.3.0",
  485 + "http-errors": "~1.3.1",
  486 + "mime": "1.3.4",
  487 + "ms": "0.7.1",
  488 + "on-finished": "~2.3.0",
  489 + "range-parser": "~1.0.3",
  490 + "statuses": "~1.2.1"
  491 + }
  492 + }
  493 + }
  494 + },
  495 + "statuses": {
  496 + "version": "1.2.1",
  497 + "resolved": "http://registry.npm.taobao.org/statuses/download/statuses-1.2.1.tgz",
  498 + "integrity": "sha1-3e1FzBglbVHtQK7BQkidXGECbSg="
  499 + },
  500 + "vary": {
  501 + "version": "1.0.1",
  502 + "resolved": "http://registry.npm.taobao.org/vary/download/vary-1.0.1.tgz",
  503 + "integrity": "sha1-meSYFWaihhGN+yuBc1ffeZM3bRA="
  504 + }
  505 + }
  506 + },
  507 + "express-session": {
  508 + "version": "1.17.0",
  509 + "resolved": "https://registry.npm.taobao.org/express-session/download/express-session-1.17.0.tgz",
  510 + "integrity": "sha1-m1DbteigPDU3NoE48HJzYVC3+bM=",
  511 + "requires": {
  512 + "cookie": "0.4.0",
  513 + "cookie-signature": "1.0.6",
  514 + "debug": "2.6.9",
  515 + "depd": "~2.0.0",
  516 + "on-headers": "~1.0.2",
  517 + "parseurl": "~1.3.3",
  518 + "safe-buffer": "5.2.0",
  519 + "uid-safe": "~2.1.5"
  520 + },
  521 + "dependencies": {
  522 + "cookie": {
  523 + "version": "0.4.0",
  524 + "resolved": "https://registry.npm.taobao.org/cookie/download/cookie-0.4.0.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fcookie%2Fdownload%2Fcookie-0.4.0.tgz",
  525 + "integrity": "sha1-vrQ35wIrO21JAZ0IhmUwPr6cFLo="
  526 + },
  527 + "debug": {
  528 + "version": "2.6.9",
  529 + "resolved": "http://registry.npm.taobao.org/debug/download/debug-2.6.9.tgz",
  530 + "integrity": "sha1-XRKFFd8TT/Mn6QpMk/Tgd6U2NB8=",
  531 + "requires": {
  532 + "ms": "2.0.0"
  533 + }
  534 + },
  535 + "depd": {
  536 + "version": "2.0.0",
  537 + "resolved": "http://registry.npm.taobao.org/depd/download/depd-2.0.0.tgz",
  538 + "integrity": "sha1-tpYWPMdXVg0JzyLMj60Vcbeedt8="
  539 + },
  540 + "safe-buffer": {
  541 + "version": "5.2.0",
  542 + "resolved": "https://registry.npm.taobao.org/safe-buffer/download/safe-buffer-5.2.0.tgz",
  543 + "integrity": "sha1-t02uxJsRSPiMZLaNSbHoFcHy9Rk="
  544 + }
  545 + }
  546 + },
  547 + "ext": {
  548 + "version": "1.2.0",
  549 + "resolved": "https://registry.npm.taobao.org/ext/download/ext-1.2.0.tgz?cache=0&sync_timestamp=1573137628152&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fext%2Fdownload%2Fext-1.2.0.tgz",
  550 + "integrity": "sha1-jdjS3SG8ztMEW+CWIfoMv3OQi6Q=",
  551 + "requires": {
  552 + "type": "^2.0.0"
  553 + },
  554 + "dependencies": {
  555 + "type": {
  556 + "version": "2.0.0",
  557 + "resolved": "https://registry.npm.taobao.org/type/download/type-2.0.0.tgz",
  558 + "integrity": "sha1-Xxb/bvLrRPJgSU2uJxAzspwJqcM="
  559 + }
  560 + }
  561 + },
  562 + "fast-safe-stringify": {
  563 + "version": "2.0.7",
  564 + "resolved": "https://registry.npm.taobao.org/fast-safe-stringify/download/fast-safe-stringify-2.0.7.tgz",
  565 + "integrity": "sha1-EkqohYmSYfaK7bQqfAgN6dpgh0M="
  566 + },
  567 + "fecha": {
  568 + "version": "2.3.3",
  569 + "resolved": "https://registry.npm.taobao.org/fecha/download/fecha-2.3.3.tgz",
  570 + "integrity": "sha1-lI50FX3xoy/RsSw6PDzctuydls0="
  571 + },
  572 + "fibers": {
  573 + "version": "2.0.2",
  574 + "resolved": "https://registry.npm.taobao.org/fibers/download/fibers-2.0.2.tgz",
  575 + "integrity": "sha1-Nttj6mHFQxdOImRnX+qMJ4M3E2Y="
  576 + },
  577 + "finalhandler": {
  578 + "version": "0.4.1",
  579 + "resolved": "https://registry.npm.taobao.org/finalhandler/download/finalhandler-0.4.1.tgz",
  580 + "integrity": "sha1-haF8bFmpRxfSYtYSMNSw6+PUoU0=",
  581 + "requires": {
  582 + "debug": "~2.2.0",
  583 + "escape-html": "~1.0.3",
  584 + "on-finished": "~2.3.0",
  585 + "unpipe": "~1.0.0"
  586 + },
  587 + "dependencies": {
  588 + "debug": {
  589 + "version": "2.2.0",
  590 + "resolved": "http://registry.npm.taobao.org/debug/download/debug-2.2.0.tgz",
  591 + "integrity": "sha1-+HBX6ZWxofauaklgZkE3vFbwOdo=",
  592 + "requires": {
  593 + "ms": "0.7.1"
  594 + }
  595 + },
  596 + "ms": {
  597 + "version": "0.7.1",
  598 + "resolved": "https://registry.npm.taobao.org/ms/download/ms-0.7.1.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fms%2Fdownload%2Fms-0.7.1.tgz",
  599 + "integrity": "sha1-nNE8A62/8ltl7/3nzoZO6VIBcJg="
  600 + }
  601 + }
  602 + },
  603 + "forwarded": {
  604 + "version": "0.1.2",
  605 + "resolved": "http://registry.npm.taobao.org/forwarded/download/forwarded-0.1.2.tgz",
  606 + "integrity": "sha1-mMI9qxF1ZXuMBXPozszZGw/xjIQ="
  607 + },
  608 + "fresh": {
  609 + "version": "0.3.0",
  610 + "resolved": "http://registry.npm.taobao.org/fresh/download/fresh-0.3.0.tgz",
  611 + "integrity": "sha1-ZR+DjiJCTnVm3hYdg1jKoZn4PU8="
  612 + },
  613 + "http-errors": {
  614 + "version": "1.7.2",
  615 + "resolved": "https://registry.npm.taobao.org/http-errors/download/http-errors-1.7.2.tgz?cache=0&sync_timestamp=1561418526117&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fhttp-errors%2Fdownload%2Fhttp-errors-1.7.2.tgz",
  616 + "integrity": "sha1-T1ApzxMjnzEDblsuVSkrz7zIXI8=",
  617 + "requires": {
  618 + "depd": "~1.1.2",
  619 + "inherits": "2.0.3",
  620 + "setprototypeof": "1.1.1",
  621 + "statuses": ">= 1.5.0 < 2",
  622 + "toidentifier": "1.0.0"
  623 + }
  624 + },
  625 + "iconv-lite": {
  626 + "version": "0.4.24",
  627 + "resolved": "https://registry.npm.taobao.org/iconv-lite/download/iconv-lite-0.4.24.tgz",
  628 + "integrity": "sha1-ICK0sl+93CHS9SSXSkdKr+czkIs=",
  629 + "requires": {
  630 + "safer-buffer": ">= 2.1.2 < 3"
  631 + }
  632 + },
  633 + "inherits": {
  634 + "version": "2.0.3",
  635 + "resolved": "https://registry.npm.taobao.org/inherits/download/inherits-2.0.3.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Finherits%2Fdownload%2Finherits-2.0.3.tgz",
  636 + "integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4="
  637 + },
  638 + "ipaddr.js": {
  639 + "version": "1.0.5",
  640 + "resolved": "https://registry.npm.taobao.org/ipaddr.js/download/ipaddr.js-1.0.5.tgz",
  641 + "integrity": "sha1-X6eM8wG4JceKvDBC2BJyMEnqI8c="
  642 + },
  643 + "is-arrayish": {
  644 + "version": "0.3.2",
  645 + "resolved": "http://registry.npm.taobao.org/is-arrayish/download/is-arrayish-0.3.2.tgz",
  646 + "integrity": "sha1-RXSirlb3qyBolvtDHq7tBm/fjwM="
  647 + },
  648 + "is-stream": {
  649 + "version": "1.1.0",
  650 + "resolved": "https://registry.npm.taobao.org/is-stream/download/is-stream-1.1.0.tgz",
  651 + "integrity": "sha1-EtSj3U5o4Lec6428hBc66A2RykQ="
  652 + },
  653 + "isarray": {
  654 + "version": "1.0.0",
  655 + "resolved": "https://registry.npm.taobao.org/isarray/download/isarray-1.0.0.tgz?cache=0&sync_timestamp=1562592096220&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fisarray%2Fdownload%2Fisarray-1.0.0.tgz",
  656 + "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE="
  657 + },
  658 + "kuler": {
  659 + "version": "1.0.1",
  660 + "resolved": "https://registry.npm.taobao.org/kuler/download/kuler-1.0.1.tgz",
  661 + "integrity": "sha1-73x4TzbJ+24W3TFQ0VJneysCKKY=",
  662 + "requires": {
  663 + "colornames": "^1.1.1"
  664 + }
  665 + },
  666 + "lodash": {
  667 + "version": "4.17.15",
  668 + "resolved": "https://registry.npm.taobao.org/lodash/download/lodash-4.17.15.tgz",
  669 + "integrity": "sha1-tEf2ZwoEVbv+7dETku/zMOoJdUg="
  670 + },
  671 + "log": {
  672 + "version": "6.0.0",
  673 + "resolved": "https://registry.npm.taobao.org/log/download/log-6.0.0.tgz",
  674 + "integrity": "sha1-Ho5lXwOJFI5ynZ3dbTvL6Lk7jSE=",
  675 + "requires": {
  676 + "d": "^1.0.0",
  677 + "duration": "^0.2.2",
  678 + "es5-ext": "^0.10.49",
  679 + "event-emitter": "^0.3.5",
  680 + "sprintf-kit": "^2.0.0",
  681 + "type": "^1.0.1"
  682 + }
  683 + },
  684 + "logform": {
  685 + "version": "2.1.2",
  686 + "resolved": "https://registry.npm.taobao.org/logform/download/logform-2.1.2.tgz",
  687 + "integrity": "sha1-lXFV6+tnoTFkBpglzmfdtbst02A=",
  688 + "requires": {
  689 + "colors": "^1.2.1",
  690 + "fast-safe-stringify": "^2.0.4",
  691 + "fecha": "^2.3.3",
  692 + "ms": "^2.1.1",
  693 + "triple-beam": "^1.3.0"
  694 + },
  695 + "dependencies": {
  696 + "ms": {
  697 + "version": "2.1.2",
  698 + "resolved": "https://registry.npm.taobao.org/ms/download/ms-2.1.2.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fms%2Fdownload%2Fms-2.1.2.tgz",
  699 + "integrity": "sha1-0J0fNXtEP0kzgqjrPM0YOHKuYAk="
  700 + }
  701 + }
  702 + },
  703 + "media-typer": {
  704 + "version": "0.3.0",
  705 + "resolved": "https://registry.npm.taobao.org/media-typer/download/media-typer-0.3.0.tgz",
  706 + "integrity": "sha1-hxDXrwqmJvj/+hzgAWhUUmMlV0g="
  707 + },
  708 + "merge-descriptors": {
  709 + "version": "1.0.1",
  710 + "resolved": "http://registry.npm.taobao.org/merge-descriptors/download/merge-descriptors-1.0.1.tgz",
  711 + "integrity": "sha1-sAqqVW3YtEVoFQ7J0blT8/kMu2E="
  712 + },
  713 + "methods": {
  714 + "version": "1.1.2",
  715 + "resolved": "http://registry.npm.taobao.org/methods/download/methods-1.1.2.tgz",
  716 + "integrity": "sha1-VSmk1nZUE07cxSZmVoNbD4Ua/O4="
  717 + },
  718 + "mime": {
  719 + "version": "1.3.4",
  720 + "resolved": "https://registry.npm.taobao.org/mime/download/mime-1.3.4.tgz?cache=0&sync_timestamp=1560034758817&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fmime%2Fdownload%2Fmime-1.3.4.tgz",
  721 + "integrity": "sha1-EV+eO2s9rylZmDyzjxSaLUDrXVM="
  722 + },
  723 + "mime-db": {
  724 + "version": "1.40.0",
  725 + "resolved": "https://registry.npm.taobao.org/mime-db/download/mime-db-1.40.0.tgz",
  726 + "integrity": "sha1-plBX6ZjbCQ9zKmj2wnbTh9QSbDI="
  727 + },
  728 + "mime-types": {
  729 + "version": "2.1.24",
  730 + "resolved": "https://registry.npm.taobao.org/mime-types/download/mime-types-2.1.24.tgz",
  731 + "integrity": "sha1-tvjQs+lR77d97eyhlM/20W9nb4E=",
  732 + "requires": {
  733 + "mime-db": "1.40.0"
  734 + }
  735 + },
  736 + "minimist": {
  737 + "version": "0.0.8",
  738 + "resolved": "http://registry.npm.taobao.org/minimist/download/minimist-0.0.8.tgz",
  739 + "integrity": "sha1-hX/Kv8M5fSYluCKCYuhqp6ARsF0="
  740 + },
  741 + "mkdirp": {
  742 + "version": "0.5.1",
  743 + "resolved": "http://registry.npm.taobao.org/mkdirp/download/mkdirp-0.5.1.tgz",
  744 + "integrity": "sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=",
  745 + "requires": {
  746 + "minimist": "0.0.8"
  747 + }
  748 + },
  749 + "morgan": {
  750 + "version": "1.6.1",
  751 + "resolved": "http://registry.npm.taobao.org/morgan/download/morgan-1.6.1.tgz",
  752 + "integrity": "sha1-X9gYOYxoGcuiinzWZk8pL+HAu/I=",
  753 + "requires": {
  754 + "basic-auth": "~1.0.3",
  755 + "debug": "~2.2.0",
  756 + "depd": "~1.0.1",
  757 + "on-finished": "~2.3.0",
  758 + "on-headers": "~1.0.0"
  759 + },
  760 + "dependencies": {
  761 + "debug": {
  762 + "version": "2.2.0",
  763 + "resolved": "http://registry.npm.taobao.org/debug/download/debug-2.2.0.tgz",
  764 + "integrity": "sha1-+HBX6ZWxofauaklgZkE3vFbwOdo=",
  765 + "requires": {
  766 + "ms": "0.7.1"
  767 + }
  768 + },
  769 + "depd": {
  770 + "version": "1.0.1",
  771 + "resolved": "http://registry.npm.taobao.org/depd/download/depd-1.0.1.tgz",
  772 + "integrity": "sha1-gK7GTJ1tl+ZcwqnKqTwKpqv3Oqo="
  773 + },
  774 + "ms": {
  775 + "version": "0.7.1",
  776 + "resolved": "https://registry.npm.taobao.org/ms/download/ms-0.7.1.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fms%2Fdownload%2Fms-0.7.1.tgz",
  777 + "integrity": "sha1-nNE8A62/8ltl7/3nzoZO6VIBcJg="
  778 + }
  779 + }
  780 + },
  781 + "ms": {
  782 + "version": "2.0.0",
  783 + "resolved": "https://registry.npm.taobao.org/ms/download/ms-2.0.0.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fms%2Fdownload%2Fms-2.0.0.tgz",
  784 + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g="
  785 + },
  786 + "negotiator": {
  787 + "version": "0.6.2",
  788 + "resolved": "https://registry.npm.taobao.org/negotiator/download/negotiator-0.6.2.tgz",
  789 + "integrity": "sha1-/qz3zPUlp3rpY0Q2pkiD/+yjRvs="
  790 + },
  791 + "next-tick": {
  792 + "version": "1.0.0",
  793 + "resolved": "http://registry.npm.taobao.org/next-tick/download/next-tick-1.0.0.tgz",
  794 + "integrity": "sha1-yobR/ogoFpsBICCOPchCS524NCw="
  795 + },
  796 + "on-finished": {
  797 + "version": "2.3.0",
  798 + "resolved": "http://registry.npm.taobao.org/on-finished/download/on-finished-2.3.0.tgz",
  799 + "integrity": "sha1-IPEzZIGwg811M3mSoWlxqi2QaUc=",
  800 + "requires": {
  801 + "ee-first": "1.1.1"
  802 + }
  803 + },
  804 + "on-headers": {
  805 + "version": "1.0.2",
  806 + "resolved": "https://registry.npm.taobao.org/on-headers/download/on-headers-1.0.2.tgz",
  807 + "integrity": "sha1-dysK5qqlJcOZ5Imt+tkMQD6zwo8="
  808 + },
  809 + "one-time": {
  810 + "version": "0.0.4",
  811 + "resolved": "https://registry.npm.taobao.org/one-time/download/one-time-0.0.4.tgz",
  812 + "integrity": "sha1-+M33eISCb+Tf+T46nMN7HkSAdC4="
  813 + },
  814 + "parseurl": {
  815 + "version": "1.3.3",
  816 + "resolved": "https://registry.npm.taobao.org/parseurl/download/parseurl-1.3.3.tgz",
  817 + "integrity": "sha1-naGee+6NEt/wUT7Vt2lXeTvC6NQ="
  818 + },
  819 + "passport": {
  820 + "version": "0.4.0",
  821 + "resolved": "https://registry.npm.taobao.org/passport/download/passport-0.4.0.tgz",
  822 + "integrity": "sha1-xQlWkTR71a07XhgCOMORTRbwWBE=",
  823 + "requires": {
  824 + "passport-strategy": "1.x.x",
  825 + "pause": "0.0.1"
  826 + }
  827 + },
  828 + "passport-local": {
  829 + "version": "1.0.0",
  830 + "resolved": "https://registry.npm.taobao.org/passport-local/download/passport-local-1.0.0.tgz",
  831 + "integrity": "sha1-H+YyaMkudWBmJkN+O5BmYsFbpu4=",
  832 + "requires": {
  833 + "passport-strategy": "1.x.x"
  834 + }
  835 + },
  836 + "passport-strategy": {
  837 + "version": "1.0.0",
  838 + "resolved": "https://registry.npm.taobao.org/passport-strategy/download/passport-strategy-1.0.0.tgz",
  839 + "integrity": "sha1-tVOaqPwiWj0a0XlHbd8ja0QPUuQ="
  840 + },
  841 + "path-to-regexp": {
  842 + "version": "0.1.7",
  843 + "resolved": "https://registry.npm.taobao.org/path-to-regexp/download/path-to-regexp-0.1.7.tgz",
  844 + "integrity": "sha1-32BBeABfUi8V60SQ5yR6G/qmf4w="
  845 + },
  846 + "pause": {
  847 + "version": "0.0.1",
  848 + "resolved": "https://registry.npm.taobao.org/pause/download/pause-0.0.1.tgz",
  849 + "integrity": "sha1-HUCLP9t2kjuVQ9lvtMnf1TXZy10="
  850 + },
  851 + "process-nextick-args": {
  852 + "version": "2.0.1",
  853 + "resolved": "https://registry.npm.taobao.org/process-nextick-args/download/process-nextick-args-2.0.1.tgz",
  854 + "integrity": "sha1-eCDZsWEgzFXKmud5JoCufbptf+I="
  855 + },
  856 + "promise": {
  857 + "version": "7.3.1",
  858 + "resolved": "https://registry.npm.taobao.org/promise/download/promise-7.3.1.tgz",
  859 + "integrity": "sha1-BktyYCsY+Q8pGSuLG8QY/9Hr078=",
  860 + "requires": {
  861 + "asap": "~2.0.3"
  862 + }
  863 + },
  864 + "proxy-addr": {
  865 + "version": "1.0.10",
  866 + "resolved": "https://registry.npm.taobao.org/proxy-addr/download/proxy-addr-1.0.10.tgz",
  867 + "integrity": "sha1-DUCoL4Afw1VWfS7LZe/j8HfxIcU=",
  868 + "requires": {
  869 + "forwarded": "~0.1.0",
  870 + "ipaddr.js": "1.0.5"
  871 + }
  872 + },
  873 + "qs": {
  874 + "version": "6.7.0",
  875 + "resolved": "https://registry.npm.taobao.org/qs/download/qs-6.7.0.tgz",
  876 + "integrity": "sha1-QdwaAV49WB8WIXdr4xr7KHapsbw="
  877 + },
  878 + "random-bytes": {
  879 + "version": "1.0.0",
  880 + "resolved": "https://registry.npm.taobao.org/random-bytes/download/random-bytes-1.0.0.tgz",
  881 + "integrity": "sha1-T2ih3Arli9P7lYSMMDJNt11kNgs="
  882 + },
  883 + "range-parser": {
  884 + "version": "1.0.3",
  885 + "resolved": "https://registry.npm.taobao.org/range-parser/download/range-parser-1.0.3.tgz",
  886 + "integrity": "sha1-aHKCNTXGkuLCoBA4Jq/YLC4P8XU="
  887 + },
  888 + "raw-body": {
  889 + "version": "2.4.0",
  890 + "resolved": "https://registry.npm.taobao.org/raw-body/download/raw-body-2.4.0.tgz",
  891 + "integrity": "sha1-oc5vucm8NWylLoklarWQWeE9AzI=",
  892 + "requires": {
  893 + "bytes": "3.1.0",
  894 + "http-errors": "1.7.2",
  895 + "iconv-lite": "0.4.24",
  896 + "unpipe": "1.0.0"
  897 + }
  898 + },
  899 + "readable-stream": {
  900 + "version": "3.4.0",
  901 + "resolved": "https://registry.npm.taobao.org/readable-stream/download/readable-stream-3.4.0.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Freadable-stream%2Fdownload%2Freadable-stream-3.4.0.tgz",
  902 + "integrity": "sha1-pRwmdUZY4KPCHb9ZFjvUW6b0R/w=",
  903 + "requires": {
  904 + "inherits": "^2.0.3",
  905 + "string_decoder": "^1.1.1",
  906 + "util-deprecate": "^1.0.1"
  907 + }
  908 + },
  909 + "redis": {
  910 + "version": "2.8.0",
  911 + "resolved": "https://registry.npm.taobao.org/redis/download/redis-2.8.0.tgz",
  912 + "integrity": "sha1-ICKI4/WMSfYHnZevehDhMDrhSwI=",
  913 + "requires": {
  914 + "double-ended-queue": "^2.1.0-0",
  915 + "redis-commands": "^1.2.0",
  916 + "redis-parser": "^2.6.0"
  917 + }
  918 + },
  919 + "redis-commands": {
  920 + "version": "1.5.0",
  921 + "resolved": "https://registry.npm.taobao.org/redis-commands/download/redis-commands-1.5.0.tgz",
  922 + "integrity": "sha1-gNLiBpj+aI8icSf/nlFkp90X54U="
  923 + },
  924 + "redis-parser": {
  925 + "version": "2.6.0",
  926 + "resolved": "https://registry.npm.taobao.org/redis-parser/download/redis-parser-2.6.0.tgz",
  927 + "integrity": "sha1-Uu0J2srBCPGmMcB+m2mUHnoZUEs="
  928 + },
  929 + "restler": {
  930 + "version": "3.4.0",
  931 + "resolved": "https://registry.npm.taobao.org/restler/download/restler-3.4.0.tgz",
  932 + "integrity": "sha1-dB7As9FrlJ/uooE9DDxoUp6IjZs=",
  933 + "requires": {
  934 + "iconv-lite": "0.2.11",
  935 + "qs": "1.2.0",
  936 + "xml2js": "0.4.0",
  937 + "yaml": "0.2.3"
  938 + },
  939 + "dependencies": {
  940 + "iconv-lite": {
  941 + "version": "0.2.11",
  942 + "resolved": "https://registry.npm.taobao.org/iconv-lite/download/iconv-lite-0.2.11.tgz",
  943 + "integrity": "sha1-HOYKOleGSiktEyH/RgnKS7llrcg="
  944 + },
  945 + "qs": {
  946 + "version": "1.2.0",
  947 + "resolved": "https://registry.npm.taobao.org/qs/download/qs-1.2.0.tgz",
  948 + "integrity": "sha1-7Qeb4oaCFH5v2aNMwrDB4OxkU+4="
  949 + }
  950 + }
  951 + },
  952 + "safe-buffer": {
  953 + "version": "5.1.2",
  954 + "resolved": "https://registry.npm.taobao.org/safe-buffer/download/safe-buffer-5.1.2.tgz",
  955 + "integrity": "sha1-mR7GnSluAxN0fVm9/St0XDX4go0="
  956 + },
  957 + "safer-buffer": {
  958 + "version": "2.1.2",
  959 + "resolved": "http://registry.npm.taobao.org/safer-buffer/download/safer-buffer-2.1.2.tgz",
  960 + "integrity": "sha1-RPoWGwGHuVSd2Eu5GAL5vYOFzWo="
  961 + },
  962 + "sax": {
  963 + "version": "0.5.8",
  964 + "resolved": "http://registry.npm.taobao.org/sax/download/sax-0.5.8.tgz",
  965 + "integrity": "sha1-1HLbIo6zMcJQaw6MFVJK25OdEsE="
  966 + },
  967 + "scripts": {
  968 + "version": "0.1.0",
  969 + "resolved": "https://registry.npm.taobao.org/scripts/download/scripts-0.1.0.tgz",
  970 + "integrity": "sha1-PrGXE7WtH1i8PjnOY2Bta+qgBpM="
  971 + },
  972 + "send": {
  973 + "version": "0.13.1",
  974 + "resolved": "https://registry.npm.taobao.org/send/download/send-0.13.1.tgz",
  975 + "integrity": "sha1-ow1fTILIqbrprQCh2bG9vm8Zntc=",
  976 + "requires": {
  977 + "debug": "~2.2.0",
  978 + "depd": "~1.1.0",
  979 + "destroy": "~1.0.4",
  980 + "escape-html": "~1.0.3",
  981 + "etag": "~1.7.0",
  982 + "fresh": "0.3.0",
  983 + "http-errors": "~1.3.1",
  984 + "mime": "1.3.4",
  985 + "ms": "0.7.1",
  986 + "on-finished": "~2.3.0",
  987 + "range-parser": "~1.0.3",
  988 + "statuses": "~1.2.1"
  989 + },
  990 + "dependencies": {
  991 + "debug": {
  992 + "version": "2.2.0",
  993 + "resolved": "http://registry.npm.taobao.org/debug/download/debug-2.2.0.tgz",
  994 + "integrity": "sha1-+HBX6ZWxofauaklgZkE3vFbwOdo=",
  995 + "requires": {
  996 + "ms": "0.7.1"
  997 + }
  998 + },
  999 + "http-errors": {
  1000 + "version": "1.3.1",
  1001 + "resolved": "https://registry.npm.taobao.org/http-errors/download/http-errors-1.3.1.tgz?cache=0&sync_timestamp=1561418526117&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fhttp-errors%2Fdownload%2Fhttp-errors-1.3.1.tgz",
  1002 + "integrity": "sha1-GX4izevUGYWF6GlO9nhhl7ke2UI=",
  1003 + "requires": {
  1004 + "inherits": "~2.0.1",
  1005 + "statuses": "1"
  1006 + }
  1007 + },
  1008 + "ms": {
  1009 + "version": "0.7.1",
  1010 + "resolved": "https://registry.npm.taobao.org/ms/download/ms-0.7.1.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fms%2Fdownload%2Fms-0.7.1.tgz",
  1011 + "integrity": "sha1-nNE8A62/8ltl7/3nzoZO6VIBcJg="
  1012 + },
  1013 + "statuses": {
  1014 + "version": "1.2.1",
  1015 + "resolved": "http://registry.npm.taobao.org/statuses/download/statuses-1.2.1.tgz",
  1016 + "integrity": "sha1-3e1FzBglbVHtQK7BQkidXGECbSg="
  1017 + }
  1018 + }
  1019 + },
  1020 + "serve-favicon": {
  1021 + "version": "2.3.2",
  1022 + "resolved": "http://registry.npm.taobao.org/serve-favicon/download/serve-favicon-2.3.2.tgz",
  1023 + "integrity": "sha1-3UGeJo3gEqtysxnTN/IQUBP5OB8=",
  1024 + "requires": {
  1025 + "etag": "~1.7.0",
  1026 + "fresh": "0.3.0",
  1027 + "ms": "0.7.2",
  1028 + "parseurl": "~1.3.1"
  1029 + },
  1030 + "dependencies": {
  1031 + "ms": {
  1032 + "version": "0.7.2",
  1033 + "resolved": "https://registry.npm.taobao.org/ms/download/ms-0.7.2.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fms%2Fdownload%2Fms-0.7.2.tgz",
  1034 + "integrity": "sha1-riXPJRKziFodldfwN4aNhDESR2U="
  1035 + }
  1036 + }
  1037 + },
  1038 + "serve-static": {
  1039 + "version": "1.14.1",
  1040 + "resolved": "https://registry.npm.taobao.org/serve-static/download/serve-static-1.14.1.tgz",
  1041 + "integrity": "sha1-Zm5jbcTwEPfvKZcKiKZ0MgiYsvk=",
  1042 + "requires": {
  1043 + "encodeurl": "~1.0.2",
  1044 + "escape-html": "~1.0.3",
  1045 + "parseurl": "~1.3.3",
  1046 + "send": "0.17.1"
  1047 + },
  1048 + "dependencies": {
  1049 + "debug": {
  1050 + "version": "2.6.9",
  1051 + "resolved": "http://registry.npm.taobao.org/debug/download/debug-2.6.9.tgz",
  1052 + "integrity": "sha1-XRKFFd8TT/Mn6QpMk/Tgd6U2NB8=",
  1053 + "requires": {
  1054 + "ms": "2.0.0"
  1055 + },
  1056 + "dependencies": {
  1057 + "ms": {
  1058 + "version": "2.0.0",
  1059 + "resolved": "https://registry.npm.taobao.org/ms/download/ms-2.0.0.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fms%2Fdownload%2Fms-2.0.0.tgz",
  1060 + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g="
  1061 + }
  1062 + }
  1063 + },
  1064 + "etag": {
  1065 + "version": "1.8.1",
  1066 + "resolved": "http://registry.npm.taobao.org/etag/download/etag-1.8.1.tgz",
  1067 + "integrity": "sha1-Qa4u62XvpiJorr/qg6x9eSmbCIc="
  1068 + },
  1069 + "fresh": {
  1070 + "version": "0.5.2",
  1071 + "resolved": "http://registry.npm.taobao.org/fresh/download/fresh-0.5.2.tgz",
  1072 + "integrity": "sha1-PYyt2Q2XZWn6g1qx+OSyOhBWBac="
  1073 + },
  1074 + "mime": {
  1075 + "version": "1.6.0",
  1076 + "resolved": "https://registry.npm.taobao.org/mime/download/mime-1.6.0.tgz?cache=0&sync_timestamp=1560034758817&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fmime%2Fdownload%2Fmime-1.6.0.tgz",
  1077 + "integrity": "sha1-Ms2eXGRVO9WNGaVor0Uqz/BJgbE="
  1078 + },
  1079 + "ms": {
  1080 + "version": "2.1.1",
  1081 + "resolved": "https://registry.npm.taobao.org/ms/download/ms-2.1.1.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fms%2Fdownload%2Fms-2.1.1.tgz",
  1082 + "integrity": "sha1-MKWGTrPrsKZvLr5tcnrwagnYbgo="
  1083 + },
  1084 + "range-parser": {
  1085 + "version": "1.2.1",
  1086 + "resolved": "https://registry.npm.taobao.org/range-parser/download/range-parser-1.2.1.tgz",
  1087 + "integrity": "sha1-PPNwI9GZ4cJNGlW4SADC8+ZGgDE="
  1088 + },
  1089 + "send": {
  1090 + "version": "0.17.1",
  1091 + "resolved": "https://registry.npm.taobao.org/send/download/send-0.17.1.tgz",
  1092 + "integrity": "sha1-wdiwWfeQD3Rm3Uk4vcROEd2zdsg=",
  1093 + "requires": {
  1094 + "debug": "2.6.9",
  1095 + "depd": "~1.1.2",
  1096 + "destroy": "~1.0.4",
  1097 + "encodeurl": "~1.0.2",
  1098 + "escape-html": "~1.0.3",
  1099 + "etag": "~1.8.1",
  1100 + "fresh": "0.5.2",
  1101 + "http-errors": "~1.7.2",
  1102 + "mime": "1.6.0",
  1103 + "ms": "2.1.1",
  1104 + "on-finished": "~2.3.0",
  1105 + "range-parser": "~1.2.1",
  1106 + "statuses": "~1.5.0"
  1107 + }
  1108 + }
  1109 + }
  1110 + },
  1111 + "setprototypeof": {
  1112 + "version": "1.1.1",
  1113 + "resolved": "https://registry.npm.taobao.org/setprototypeof/download/setprototypeof-1.1.1.tgz",
  1114 + "integrity": "sha1-fpWsskqpL1iF4KvvW6ExMw1K5oM="
  1115 + },
  1116 + "simple-swizzle": {
  1117 + "version": "0.2.2",
  1118 + "resolved": "http://registry.npm.taobao.org/simple-swizzle/download/simple-swizzle-0.2.2.tgz",
  1119 + "integrity": "sha1-pNprY1/8zMoz9w0Xy5JZLeleVXo=",
  1120 + "requires": {
  1121 + "is-arrayish": "^0.3.1"
  1122 + }
  1123 + },
  1124 + "sprintf-kit": {
  1125 + "version": "2.0.0",
  1126 + "resolved": "https://registry.npm.taobao.org/sprintf-kit/download/sprintf-kit-2.0.0.tgz",
  1127 + "integrity": "sha1-R0mdY26cxo8vkh0w608LkRoteDU=",
  1128 + "requires": {
  1129 + "es5-ext": "^0.10.46"
  1130 + }
  1131 + },
  1132 + "stack-trace": {
  1133 + "version": "0.0.10",
  1134 + "resolved": "http://registry.npm.taobao.org/stack-trace/download/stack-trace-0.0.10.tgz",
  1135 + "integrity": "sha1-VHxws0fo0ytOEI6hoqFZ5f3eGcA="
  1136 + },
  1137 + "statuses": {
  1138 + "version": "1.5.0",
  1139 + "resolved": "http://registry.npm.taobao.org/statuses/download/statuses-1.5.0.tgz",
  1140 + "integrity": "sha1-Fhx9rBd2Wf2YEfQ3cfqZOBR4Yow="
  1141 + },
  1142 + "string_decoder": {
  1143 + "version": "1.3.0",
  1144 + "resolved": "https://registry.npm.taobao.org/string_decoder/download/string_decoder-1.3.0.tgz",
  1145 + "integrity": "sha1-QvEUWUpGzxqOMLCoT1bHjD7awh4=",
  1146 + "requires": {
  1147 + "safe-buffer": "~5.2.0"
  1148 + },
  1149 + "dependencies": {
  1150 + "safe-buffer": {
  1151 + "version": "5.2.0",
  1152 + "resolved": "https://registry.npm.taobao.org/safe-buffer/download/safe-buffer-5.2.0.tgz",
  1153 + "integrity": "sha1-t02uxJsRSPiMZLaNSbHoFcHy9Rk="
  1154 + }
  1155 + }
  1156 + },
  1157 + "text-hex": {
  1158 + "version": "1.0.0",
  1159 + "resolved": "https://registry.npm.taobao.org/text-hex/download/text-hex-1.0.0.tgz",
  1160 + "integrity": "sha1-adycGxdEbueakr9biEu0uRJ1BvU="
  1161 + },
  1162 + "toidentifier": {
  1163 + "version": "1.0.0",
  1164 + "resolved": "http://registry.npm.taobao.org/toidentifier/download/toidentifier-1.0.0.tgz",
  1165 + "integrity": "sha1-fhvjRw8ed5SLxD2Uo8j013UrpVM="
  1166 + },
  1167 + "triple-beam": {
  1168 + "version": "1.3.0",
  1169 + "resolved": "https://registry.npm.taobao.org/triple-beam/download/triple-beam-1.3.0.tgz",
  1170 + "integrity": "sha1-pZUhTHKY24M57u7gg+TRC9jLjdk="
  1171 + },
  1172 + "type": {
  1173 + "version": "1.2.0",
  1174 + "resolved": "https://registry.npm.taobao.org/type/download/type-1.2.0.tgz",
  1175 + "integrity": "sha1-hI3XaY2vo+VKbEeedZxLw/GIR6A="
  1176 + },
  1177 + "type-is": {
  1178 + "version": "1.6.18",
  1179 + "resolved": "https://registry.npm.taobao.org/type-is/download/type-is-1.6.18.tgz",
  1180 + "integrity": "sha1-TlUs0F3wlGfcvE73Od6J8s83wTE=",
  1181 + "requires": {
  1182 + "media-typer": "0.3.0",
  1183 + "mime-types": "~2.1.24"
  1184 + }
  1185 + },
  1186 + "uid-safe": {
  1187 + "version": "2.1.5",
  1188 + "resolved": "https://registry.npm.taobao.org/uid-safe/download/uid-safe-2.1.5.tgz",
  1189 + "integrity": "sha1-Kz1cckDo/C5Y+Komnl7knAhXvTo=",
  1190 + "requires": {
  1191 + "random-bytes": "~1.0.0"
  1192 + }
  1193 + },
  1194 + "underscore": {
  1195 + "version": "1.9.1",
  1196 + "resolved": "http://registry.npm.taobao.org/underscore/download/underscore-1.9.1.tgz",
  1197 + "integrity": "sha1-BtzjSg5op7q8KbNluOdLiSUgOWE="
  1198 + },
  1199 + "unpipe": {
  1200 + "version": "1.0.0",
  1201 + "resolved": "http://registry.npm.taobao.org/unpipe/download/unpipe-1.0.0.tgz",
  1202 + "integrity": "sha1-sr9O6FFKrmFltIF4KdIbLvSZBOw="
  1203 + },
  1204 + "util-deprecate": {
  1205 + "version": "1.0.2",
  1206 + "resolved": "http://registry.npm.taobao.org/util-deprecate/download/util-deprecate-1.0.2.tgz",
  1207 + "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8="
  1208 + },
  1209 + "utils-merge": {
  1210 + "version": "1.0.0",
  1211 + "resolved": "http://registry.npm.taobao.org/utils-merge/download/utils-merge-1.0.0.tgz",
  1212 + "integrity": "sha1-ApT7kiu5N1FTVBxPcJYjHyh8ivg="
  1213 + },
  1214 + "vary": {
  1215 + "version": "1.1.2",
  1216 + "resolved": "http://registry.npm.taobao.org/vary/download/vary-1.1.2.tgz",
  1217 + "integrity": "sha1-IpnwLG3tMNSllhsLn3RSShj2NPw="
  1218 + },
  1219 + "winston": {
  1220 + "version": "3.2.1",
  1221 + "resolved": "https://registry.npm.taobao.org/winston/download/winston-3.2.1.tgz",
  1222 + "integrity": "sha1-YwYTd5dsc1hAKL4kkKGEYFX3fwc=",
  1223 + "requires": {
  1224 + "async": "^2.6.1",
  1225 + "diagnostics": "^1.1.1",
  1226 + "is-stream": "^1.1.0",
  1227 + "logform": "^2.1.1",
  1228 + "one-time": "0.0.4",
  1229 + "readable-stream": "^3.1.1",
  1230 + "stack-trace": "0.0.x",
  1231 + "triple-beam": "^1.3.0",
  1232 + "winston-transport": "^4.3.0"
  1233 + }
  1234 + },
  1235 + "winston-transport": {
  1236 + "version": "4.3.0",
  1237 + "resolved": "https://registry.npm.taobao.org/winston-transport/download/winston-transport-4.3.0.tgz",
  1238 + "integrity": "sha1-32jAwgJILESNm0cxPAcwTC18LGY=",
  1239 + "requires": {
  1240 + "readable-stream": "^2.3.6",
  1241 + "triple-beam": "^1.2.0"
  1242 + },
  1243 + "dependencies": {
  1244 + "readable-stream": {
  1245 + "version": "2.3.6",
  1246 + "resolved": "https://registry.npm.taobao.org/readable-stream/download/readable-stream-2.3.6.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Freadable-stream%2Fdownload%2Freadable-stream-2.3.6.tgz",
  1247 + "integrity": "sha1-sRwn2IuP8fvgcGQ8+UsMea4bCq8=",
  1248 + "requires": {
  1249 + "core-util-is": "~1.0.0",
  1250 + "inherits": "~2.0.3",
  1251 + "isarray": "~1.0.0",
  1252 + "process-nextick-args": "~2.0.0",
  1253 + "safe-buffer": "~5.1.1",
  1254 + "string_decoder": "~1.1.1",
  1255 + "util-deprecate": "~1.0.1"
  1256 + }
  1257 + },
  1258 + "string_decoder": {
  1259 + "version": "1.1.1",
  1260 + "resolved": "https://registry.npm.taobao.org/string_decoder/download/string_decoder-1.1.1.tgz",
  1261 + "integrity": "sha1-nPFhG6YmhdcDCunkujQUnDrwP8g=",
  1262 + "requires": {
  1263 + "safe-buffer": "~5.1.0"
  1264 + }
  1265 + }
  1266 + }
  1267 + },
  1268 + "xml2js": {
  1269 + "version": "0.4.0",
  1270 + "resolved": "https://registry.npm.taobao.org/xml2js/download/xml2js-0.4.0.tgz?cache=0&sync_timestamp=1567537927897&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fxml2js%2Fdownload%2Fxml2js-0.4.0.tgz",
  1271 + "integrity": "sha1-Ek/EEUtBKcgQgA7LKshs8lRiy5o=",
  1272 + "requires": {
  1273 + "sax": "0.5.x",
  1274 + "xmlbuilder": ">=0.4.2"
  1275 + }
  1276 + },
  1277 + "xmlbuilder": {
  1278 + "version": "13.0.2",
  1279 + "resolved": "https://registry.npm.taobao.org/xmlbuilder/download/xmlbuilder-13.0.2.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fxmlbuilder%2Fdownload%2Fxmlbuilder-13.0.2.tgz",
  1280 + "integrity": "sha1-Aq4zYUtqBH0cMrU4nB/ayyvOR6c="
  1281 + },
  1282 + "yaml": {
  1283 + "version": "0.2.3",
  1284 + "resolved": "https://registry.npm.taobao.org/yaml/download/yaml-0.2.3.tgz",
  1285 + "integrity": "sha1-tUUOkudu82td0k42YAkeuu7z5cc="
  1286 + }
  1287 + }
  1288 +}
... ...
... ... @@ -3,7 +3,7 @@
3 3 "version": "0.0.2",
4 4 "private": true,
5 5 "scripts": {
6   - "start": "node --inspect ./app "
  6 + "start": "node ./app "
7 7 },
8 8 "main": "index.js",
9 9 "dependencies": {
... ... @@ -21,6 +21,8 @@
21 21 "express-session": "^1.16.1",
22 22 "lodash": "^4.17.11",
23 23 "morgan": "~1.6.1",
  24 + "passport": "^0.4.0",
  25 + "passport-local": "^1.0.0",
24 26 "restler": "^3.4.0",
25 27 "serve-favicon": "~2.3.0",
26 28 "serve-static": "^1.13.2",
... ...
1 1 <!DOCTYPE html>
2   -<html lang="en">
3   -
4   -<head>
5   - <meta charset="UTF-8">
6   - <meta name="viewport" content="width=device-width, initial-scale=1.0">
7   - <meta http-equiv="X-UA-Compatible" content="ie=edge">
8   - <title>Document</title>
9   -</head>
10   -
11   -<body>
12   - hello word234
13   -</body>
14   -
15   -</html>
\ No newline at end of file
  2 +<html>
  3 + <head>
  4 + <title><%= title %></title>
  5 + <link rel='stylesheet' href='/stylesheets/style.css' />
  6 + </head>
  7 + <body>
  8 + <h1><%= title %></h1>
  9 + <form action="login" method="post">
  10 + <p>用户名: <input type="text" name="username" /></p>
  11 + <p>密码: <input type="text" name="password" /></p>
  12 + <input type="submit" value="提交" />
  13 + </form>
  14 + </body>
  15 +</html>
... ...
1   -<!DOCTYPE html>
2   -<html lang="en">
3   -
4   -<head>
5   - <meta charset="UTF-8">
6   - <meta name="viewport" content="width=device-width, initial-scale=1.0">
7   - <meta http-equiv="X-UA-Compatible" content="ie=edge">
8   - <title>Document</title>
9   -</head>
10   -
11   -<body>
12   - hello word234
13   -</body>
14   -
15   -</html>
\ No newline at end of file
1 1 var express = require('express');
  2 +var passport = require('passport');
2 3
3 4 exports = module.exports = function (settings) {
4 5 var app = this;
... ... @@ -6,13 +7,22 @@ exports = module.exports = function (settings) {
6 7 router.get(
7 8 '/',
8 9 function (req, res, next) {
9   - res.send({ '/': '1' });
  10 + res.render('index',{ 'title': '1' });
10 11 }
11 12 );
12   - router.get(
13   - '/offer/:requestId',
  13 +
  14 + router.post(
  15 + '/login',
14 16 function (req, res, next) {
15   - res.send({ '/offer/:requestId': '1' });
  17 + passport.authenticate('local', function (err, user, info) {
  18 + console.log("doLogin:", err, user, info)
  19 + if (err) { return next(err); }
  20 + if (!user) { return res.send(info); }
  21 + req.logIn(user, function (err) {
  22 + if (err) { return next(err); }
  23 + return res.send({ 'ok': '登录成功', user_info: info });
  24 + });
  25 + })(req, res, next);
16 26 }
17 27 );
18 28
... ...
... ... @@ -6,6 +6,10 @@
6 6 </head>
7 7 <body>
8 8 <h1><%= title %></h1>
9   - <p>Welcome to <%= title %></p>
  9 + <form action="form_action.asp" method="get">
  10 + <p>用户名: <input type="text" name="fname" /></p>
  11 + <p>密码: <input type="text" name="lname" /></p>
  12 + <input type="submit" value="Submit" />
  13 + </form>
10 14 </body>
11 15 </html>
... ...
注册登录 后发表评论