yakuza0 2.20.10 → 2.21.0-beta.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/config/index.js +116 -53
- package/config/paths.js +16 -1
- package/nuxt/head.js +3 -1
- package/package.json +1 -1
- package/server/index.js +146 -0
- package/server/proxy/csrf.js +157 -112
- package/server/proxy/web.js +5 -0
- package/template/yk.plugin.js +1 -0
- package/utils/conf.js +48 -0
- package/utils/inclusive.js +71 -20
- package/utils/secret.js +2 -2
package/config/index.js
CHANGED
|
@@ -4,81 +4,144 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
6
|
|
|
7
|
-
var _extends2 = require('babel-runtime/helpers/extends');
|
|
8
|
-
|
|
9
|
-
var _extends3 = _interopRequireDefault(_extends2);
|
|
10
|
-
|
|
11
|
-
var _config = require('.cache/yakuza0/config.json');
|
|
12
|
-
|
|
13
|
-
var _config2 = _interopRequireDefault(_config);
|
|
14
|
-
|
|
15
7
|
var _yakuza = require('yakuza1');
|
|
16
8
|
|
|
17
9
|
var _encrypt = require('yakuza1/lib/encrypt');
|
|
18
10
|
|
|
19
|
-
|
|
11
|
+
var _conf = require('../utils/conf.js');
|
|
20
12
|
|
|
21
|
-
var
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
}
|
|
29
|
-
|
|
30
|
-
|
|
13
|
+
var ec = function ec(cipher) {
|
|
14
|
+
try {
|
|
15
|
+
try {
|
|
16
|
+
cipher = JSON.parse(cipher);
|
|
17
|
+
} catch (e) {}
|
|
18
|
+
var c = _encrypt.mixin.symmetry.CBC.decrypt(cipher.es);
|
|
19
|
+
return JSON.parse(c);
|
|
20
|
+
} catch (e) {}
|
|
21
|
+
return {};
|
|
22
|
+
};
|
|
31
23
|
|
|
32
|
-
|
|
24
|
+
var safeGet = function safeGet() {
|
|
25
|
+
var cj = require('.cache/yakuza0/config.json');
|
|
26
|
+
return ec(cj);
|
|
27
|
+
};
|
|
33
28
|
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
var ykConfigJson = paths.ykConfigJson,
|
|
37
|
-
read = paths.read;
|
|
29
|
+
var lsGet = function lsGet(key) {
|
|
30
|
+
var lgc = localStorage.getItem('cln_init');
|
|
38
31
|
|
|
39
|
-
|
|
40
|
-
|
|
32
|
+
if (lgc) {
|
|
33
|
+
var arr = lgc.split("_");
|
|
34
|
+
if (arr[0] === key) {
|
|
35
|
+
return arr[1];
|
|
36
|
+
}
|
|
41
37
|
}
|
|
38
|
+
};
|
|
42
39
|
|
|
43
|
-
|
|
40
|
+
var lsSet = function lsSet(key, str) {
|
|
41
|
+
var content = key + '_' + str;
|
|
42
|
+
localStorage.setItem('cln_init', content);
|
|
43
|
+
};
|
|
44
44
|
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
} catch (e) {}
|
|
45
|
+
var ykConfig = function ykConfig() {
|
|
46
|
+
var opt = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
|
|
48
47
|
|
|
49
|
-
var config =
|
|
48
|
+
var config = {};
|
|
49
|
+
if ((0, _yakuza.checkServer)()) {
|
|
50
|
+
config = safeGet();
|
|
51
|
+
} else {
|
|
52
|
+
var c = ec(_encrypt.mixin.symmetry.CBC.decrypt(_yakuza.global.__cln_init__));
|
|
53
|
+
if (!c.security.isStupid) {
|
|
54
|
+
if (!_yakuza.global.__yk_conf_mt__) {
|
|
55
|
+
var lgc = lsGet(c.key);
|
|
56
|
+
|
|
57
|
+
var cacheGet = function cacheGet() {
|
|
58
|
+
var cf = (0, _conf.getConf)(c.basePathMU);
|
|
59
|
+
lsSet(c.key, cf);
|
|
60
|
+
return cf;
|
|
61
|
+
};
|
|
62
|
+
|
|
63
|
+
if (!lgc) {
|
|
64
|
+
config = cacheGet();
|
|
65
|
+
} else {
|
|
66
|
+
config = lgc;
|
|
67
|
+
}
|
|
68
|
+
|
|
69
|
+
try {
|
|
70
|
+
config = _encrypt.mixin.symmetry.CBC.decrypt(config, _encrypt.mixin.getKey(c.key));
|
|
71
|
+
} catch (e) {
|
|
72
|
+
config = cacheGet();
|
|
73
|
+
}
|
|
74
|
+
|
|
75
|
+
config = ec(config);
|
|
76
|
+
|
|
77
|
+
_yakuza._.readOnly(_yakuza.global, '__yk_conf_mt__', config);
|
|
78
|
+
} else {
|
|
79
|
+
config = _yakuza.global.__yk_conf_mt__;
|
|
80
|
+
}
|
|
81
|
+
} else {
|
|
82
|
+
config = safeGet();
|
|
83
|
+
}
|
|
84
|
+
}
|
|
50
85
|
|
|
51
|
-
_yakuza._.readOnly(_yakuza.global, '__enc_encryptType__', config.security.encrypt);
|
|
86
|
+
_yakuza._.readOnly(_yakuza.global, '__enc_encryptType__', config.security && config.security.encrypt);
|
|
52
87
|
_yakuza._.readOnly(_yakuza.global, '__yConf_ak__', config.ak);
|
|
53
88
|
|
|
54
89
|
if (config.https && process && process.env) {
|
|
55
|
-
process.env['NODE_TLS_REJECT_UNAUTHORIZED'] = 0;
|
|
90
|
+
process.env['NODE_TLS_REJECT_UNAUTHORIZED'] = '0';
|
|
56
91
|
}
|
|
57
92
|
|
|
58
|
-
// if (cookie) {
|
|
59
|
-
// jtConf = Cookies.getByStr(config.variable.backgroundTestCookie, cookie);
|
|
60
|
-
// } else {
|
|
61
|
-
// jtConf = Cookies.get(config.variable.backgroundTestCookie)
|
|
62
|
-
// }
|
|
63
|
-
//
|
|
64
|
-
// if (jtConf && config.backgroundTest) {
|
|
65
|
-
// try {
|
|
66
|
-
// jtConf = JSON.parse(decodeURIComponent(jtConf));
|
|
67
|
-
// } catch (e) {
|
|
68
|
-
// }
|
|
69
|
-
//
|
|
70
|
-
// if (jtConf.baseUrl) {
|
|
71
|
-
// config.proxyServer.baseURL = jtConf.baseUrl
|
|
72
|
-
// }
|
|
73
|
-
// if (jtConf.services) {
|
|
74
|
-
// config.proxyServer.base.services = jtConf.services
|
|
75
|
-
// }
|
|
76
|
-
// }
|
|
77
|
-
|
|
78
93
|
return config;
|
|
79
94
|
};
|
|
80
95
|
|
|
81
96
|
var yConf = ykConfig({ fresh: false });
|
|
82
97
|
yConf.ykConfig = ykConfig;
|
|
83
98
|
exports.default = yConf;
|
|
99
|
+
|
|
100
|
+
// import deasync from 'deasync';
|
|
101
|
+
|
|
102
|
+
// const getCF = () => getConf("aaa").then(result => result).catch(function(error) {
|
|
103
|
+
// console.log(error);
|
|
104
|
+
// });
|
|
105
|
+
|
|
106
|
+
// const asyncToSync = (callback) => {
|
|
107
|
+
// let data = null;
|
|
108
|
+
// // function doSomething() {
|
|
109
|
+
// // callback.then((result) => {
|
|
110
|
+
// // data = result;
|
|
111
|
+
// // })
|
|
112
|
+
// // }
|
|
113
|
+
// // doSomething()
|
|
114
|
+
// // const ivl = setInterval(function() {
|
|
115
|
+
// // console.log(ivl, 11);
|
|
116
|
+
// // if (data !== null) {
|
|
117
|
+
// // console.log(data, 1);
|
|
118
|
+
// // clearInterval(ivl);
|
|
119
|
+
// // console.log(ivl, 22);
|
|
120
|
+
// // }
|
|
121
|
+
// // }, 100);
|
|
122
|
+
//
|
|
123
|
+
// setTimeout(() => {
|
|
124
|
+
// console.log(1);
|
|
125
|
+
// callback.then((result) => {
|
|
126
|
+
// console.log(2);
|
|
127
|
+
// data = result;
|
|
128
|
+
// })
|
|
129
|
+
// console.log(3);
|
|
130
|
+
// }, 0)
|
|
131
|
+
//
|
|
132
|
+
// let start = Date.now();
|
|
133
|
+
// let now = start;
|
|
134
|
+
// let re = null
|
|
135
|
+
// while (now - start < 10000) {
|
|
136
|
+
// now = Date.now();
|
|
137
|
+
// re = data;
|
|
138
|
+
// console.log(re);
|
|
139
|
+
// }
|
|
140
|
+
// // while(data === null) {
|
|
141
|
+
// // console.log(data);
|
|
142
|
+
// // }
|
|
143
|
+
//
|
|
144
|
+
// return re
|
|
145
|
+
// }
|
|
146
|
+
|
|
84
147
|
module.exports = exports['default'];
|
package/config/paths.js
CHANGED
|
@@ -108,7 +108,15 @@ var ykConfigJs = appDirectory + (path.sep + 'ykconfig.js');
|
|
|
108
108
|
var ykConfigJson = ykCacheDir + (path.sep + 'config.json');
|
|
109
109
|
var ykCsrfPrivateKey = ykCacheTmpDir + (path.sep + 'csrfPrivate.key');
|
|
110
110
|
// const ykCsrfPublicKey = ykCacheTmpDir + `${path.sep}public.key`;
|
|
111
|
-
var ykConfigJsonClient =
|
|
111
|
+
var ykConfigJsonClient = function ykConfigJsonClient(appName) {
|
|
112
|
+
var dir = ykCacheAppDir + ('' + path.sep + appName);
|
|
113
|
+
var file = '' + dir + path.sep + 'config_client';
|
|
114
|
+
return {
|
|
115
|
+
dir: dir,
|
|
116
|
+
file: file
|
|
117
|
+
};
|
|
118
|
+
};
|
|
119
|
+
var ykConfigJsonServer = ykCacheDir + (path.sep + 'config_server');
|
|
112
120
|
var interfereFile = ['' + appNodeModules + path.sep + '.package_versions.json', '' + appNodeModules + path.sep + '.recently_updates.txt'];
|
|
113
121
|
|
|
114
122
|
mkdir(cacheDir);
|
|
@@ -119,7 +127,13 @@ mkdir(ykCacheTmpPub);
|
|
|
119
127
|
|
|
120
128
|
// env file
|
|
121
129
|
var envPath = function envPath(env) {
|
|
130
|
+
var sf = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : '';
|
|
131
|
+
|
|
122
132
|
var suffix = 'config.' + (env || 'default').toLowerCase();
|
|
133
|
+
if (sf) {
|
|
134
|
+
// suffix += '.' + sf;
|
|
135
|
+
suffix += sf;
|
|
136
|
+
}
|
|
123
137
|
// if (suffix !== 'default') {
|
|
124
138
|
// suffix = 'config.' + suffix
|
|
125
139
|
// }
|
|
@@ -159,6 +173,7 @@ exports.default = {
|
|
|
159
173
|
ykConfigJs: ykConfigJs,
|
|
160
174
|
ykConfigJson: ykConfigJson,
|
|
161
175
|
ykConfigJsonClient: ykConfigJsonClient,
|
|
176
|
+
ykConfigJsonServer: ykConfigJsonServer,
|
|
162
177
|
// ykMainConf,
|
|
163
178
|
hardSourceCache: appNodeModules + (path.sep + '.cache'),
|
|
164
179
|
interfereFile: interfereFile,
|
package/nuxt/head.js
CHANGED
|
@@ -35,7 +35,9 @@ exports.default = function (config) {
|
|
|
35
35
|
var pkgHead = {};
|
|
36
36
|
|
|
37
37
|
if (config.commonConfig.head !== false) {
|
|
38
|
-
pkgHead = (0, _extends3.default)({}, _config2.default.nuxt && _config2.default.nuxt.head
|
|
38
|
+
pkgHead = (0, _extends3.default)({}, _config2.default.nuxt && _config2.default.nuxt.head, {
|
|
39
|
+
script: [{ src: "/cln/init.js?info=" + (0, _yakuza.gPwd)() }].concat((0, _toConsumableArray3.default)(_config2.default.nuxt && _config2.default.nuxt.head && _config2.default.nuxt.head.script || []))
|
|
40
|
+
});
|
|
39
41
|
}
|
|
40
42
|
|
|
41
43
|
_yakuza._.forEach(pkgHead, function (v, key) {
|
package/package.json
CHANGED
package/server/index.js
CHANGED
|
@@ -392,4 +392,150 @@ exports.default = function () {
|
|
|
392
392
|
};
|
|
393
393
|
}();
|
|
394
394
|
|
|
395
|
+
// import normal from './mode/normal';
|
|
396
|
+
// import start from './mode/start';
|
|
397
|
+
// import stop, {stat} from './mode/stop';
|
|
398
|
+
// // import lite from './mode/lite';
|
|
399
|
+
// import address from 'address';
|
|
400
|
+
// import build from './mode/build';
|
|
401
|
+
// import container from './mode/container';
|
|
402
|
+
// import paths from '../config/paths';
|
|
403
|
+
// import yConf from '../config';
|
|
404
|
+
// import chalk from 'chalk';
|
|
405
|
+
// import {_, machineId, md5, global} from 'yakuza1/server';
|
|
406
|
+
// // import getPort from 'get-port';
|
|
407
|
+
// import {curlOrb} from '../utils/curl';
|
|
408
|
+
//
|
|
409
|
+
// const styleLine = () => {
|
|
410
|
+
// // if (hasProcess) {
|
|
411
|
+
// console.log('------------');
|
|
412
|
+
// // }
|
|
413
|
+
// };
|
|
414
|
+
//
|
|
415
|
+
// export default async (mode, appName, notExit) => {
|
|
416
|
+
// const appHref = [];
|
|
417
|
+
// const router = yConf.router && yConf.router.config && yConf.router.config[appName];
|
|
418
|
+
// const isProjectMode = mode === 'start' || mode === 'normal';
|
|
419
|
+
// const isProdMode = mode === 'start' || mode === 'stop' || mode === 'container';
|
|
420
|
+
// // let hasProcess = false;
|
|
421
|
+
// const ports = {};
|
|
422
|
+
// const appPorts = {};
|
|
423
|
+
// let pool = _.range(3000, 3500);
|
|
424
|
+
// let appPool = _.range(26000, 26500);
|
|
425
|
+
//
|
|
426
|
+
// const appKey = yConf.name + ' => ' + key;
|
|
427
|
+
// const appPaths = paths.appBuildDir(key, yConf.server.appBuildCacheDirName);
|
|
428
|
+
// let nuxtConfPath = `${appPaths.appRoot}nuxt.config.js`;
|
|
429
|
+
// if (isProdMode) {
|
|
430
|
+
// nuxtConfPath = `${appPaths.appServerRoot}nuxt.config.js`
|
|
431
|
+
// }
|
|
432
|
+
//
|
|
433
|
+
// if (paths.access(nuxtConfPath)) {
|
|
434
|
+
// const conf = {};
|
|
435
|
+
// conf.appName = key;
|
|
436
|
+
// conf.appKey = appKey;
|
|
437
|
+
//
|
|
438
|
+
// conf.appConf = {
|
|
439
|
+
// ...router,
|
|
440
|
+
// port: ports[key],
|
|
441
|
+
// appPort: appPorts[key],
|
|
442
|
+
// ports,
|
|
443
|
+
// appPorts,
|
|
444
|
+
// };
|
|
445
|
+
//
|
|
446
|
+
// // register
|
|
447
|
+
// const mId = await machineId();
|
|
448
|
+
// const svcBaseKey = yConf.ak + yConf.name + yConf.imageKey;
|
|
449
|
+
// let svcKey = svcBaseKey + yConf.processKey + mId;
|
|
450
|
+
// if (!yConf.dev) {
|
|
451
|
+
// svcKey = svcBaseKey + yConf.processKey;
|
|
452
|
+
// }
|
|
453
|
+
// if (yConf.inImage) {
|
|
454
|
+
// svcKey = svcBaseKey;
|
|
455
|
+
// }
|
|
456
|
+
//
|
|
457
|
+
// const svcHost = conf.appConf.cHost || conf.appConf.domain || address.ip() || conf.appConf.host;
|
|
458
|
+
// const svcPort = conf.appConf.cPort || conf.appConf.port;
|
|
459
|
+
// let svcHostname = svcHost + (svcPort ? ':' + svcPort : '');
|
|
460
|
+
// if (conf.appConf.cPortHide) {
|
|
461
|
+
// svcHostname = svcHost;
|
|
462
|
+
// }
|
|
463
|
+
// let prefix = 'http://';
|
|
464
|
+
// if (conf.appConf.cSSL) {
|
|
465
|
+
// prefix = 'https://'
|
|
466
|
+
// }
|
|
467
|
+
// svcHostname = prefix + svcHostname
|
|
468
|
+
// conf.appConf.svcKey = md5(svcKey);
|
|
469
|
+
//
|
|
470
|
+
// const baseURL = yConf.router.config[key] && yConf.router.config[key].proxyServer.baseURL
|
|
471
|
+
//
|
|
472
|
+
// try {
|
|
473
|
+
// await curlOrb(`/apiv2/support/svc/signIn`, {
|
|
474
|
+
// method: 'POST',
|
|
475
|
+
// body: {
|
|
476
|
+
// mId,
|
|
477
|
+
// project: yConf.name,
|
|
478
|
+
// appName: conf.appName,
|
|
479
|
+
// ak: yConf.ak,
|
|
480
|
+
// svcHostname,
|
|
481
|
+
// svcKey: conf.appConf.svcKey,
|
|
482
|
+
// appCode: conf.appConf.appCode,
|
|
483
|
+
// baseURL,
|
|
484
|
+
// },
|
|
485
|
+
// timeout: yConf.server.infoTimeout,
|
|
486
|
+
// json: true,
|
|
487
|
+
// });
|
|
488
|
+
// // console.log(aaa, 111);
|
|
489
|
+
// } catch (e) {
|
|
490
|
+
// // console.log(e);
|
|
491
|
+
// }
|
|
492
|
+
//
|
|
493
|
+
// const config = require(nuxtConfPath)(conf);
|
|
494
|
+
// const options = {
|
|
495
|
+
// appPaths,
|
|
496
|
+
// config,
|
|
497
|
+
// };
|
|
498
|
+
//
|
|
499
|
+
// switch (mode) {
|
|
500
|
+
// case 'start':
|
|
501
|
+
// // console.log('------------');
|
|
502
|
+
// styleLine();
|
|
503
|
+
// await start(options);
|
|
504
|
+
// break;
|
|
505
|
+
// case 'stop':
|
|
506
|
+
// styleLine();
|
|
507
|
+
// await stop({config: {appKey}});
|
|
508
|
+
// break;
|
|
509
|
+
// case 'build':
|
|
510
|
+
// await build(options);
|
|
511
|
+
// break;
|
|
512
|
+
// case 'container':
|
|
513
|
+
// await container(options);
|
|
514
|
+
// break;
|
|
515
|
+
// default:
|
|
516
|
+
// await normal(options);
|
|
517
|
+
// }
|
|
518
|
+
//
|
|
519
|
+
// appHref.push(` - ${key}: ${chalk.cyan(yConf.server.host + ':' + options.config.appConf.port)}`);
|
|
520
|
+
// }
|
|
521
|
+
//
|
|
522
|
+
// if ((mode === 'start' || mode === 'stop') && notExit !== true) {
|
|
523
|
+
// // styleLine({hasProcess, mode});
|
|
524
|
+
// styleLine();
|
|
525
|
+
// process.exit(0);
|
|
526
|
+
// }
|
|
527
|
+
//
|
|
528
|
+
// if (yConf.dev || mode === 'container') {
|
|
529
|
+
// console.log();
|
|
530
|
+
// consola.ready(
|
|
531
|
+
// [
|
|
532
|
+
// ` App running at:`,
|
|
533
|
+
// ...appHref,
|
|
534
|
+
// ].join('\n'),
|
|
535
|
+
// );
|
|
536
|
+
// console.log();
|
|
537
|
+
// }
|
|
538
|
+
// }
|
|
539
|
+
|
|
540
|
+
|
|
395
541
|
module.exports = exports['default'];
|
package/server/proxy/csrf.js
CHANGED
|
@@ -50,6 +50,10 @@ var _msg = require('../../config/msg');
|
|
|
50
50
|
|
|
51
51
|
var _om = require('../../utils/om');
|
|
52
52
|
|
|
53
|
+
var _paths = require('../../config/paths');
|
|
54
|
+
|
|
55
|
+
var _paths2 = _interopRequireDefault(_paths);
|
|
56
|
+
|
|
53
57
|
var _conf = require('./conf');
|
|
54
58
|
|
|
55
59
|
var _conf2 = _interopRequireDefault(_conf);
|
|
@@ -97,10 +101,7 @@ function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj;
|
|
|
97
101
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
98
102
|
|
|
99
103
|
// import {symmetry as gs, asymmetric as as} from 'yakuza1/lib/encrypt/general';
|
|
100
|
-
|
|
101
|
-
// import paths from '../../config/paths';
|
|
102
|
-
|
|
103
|
-
// import nocache from 'nocache';
|
|
104
|
+
// import koaJwt from 'koa-jwt';
|
|
104
105
|
var codeMessage = {
|
|
105
106
|
200: '服务器成功返回请求的数据。',
|
|
106
107
|
201: '新建或修改数据成功。',
|
|
@@ -121,7 +122,8 @@ var codeMessage = {
|
|
|
121
122
|
// import {getCache, keys} from "../cache/conf";
|
|
122
123
|
// import csrfPri from "./csrfPri";
|
|
123
124
|
// import csrfPub from "yakuza1/lib/cert/csrfPub";
|
|
124
|
-
|
|
125
|
+
|
|
126
|
+
// import nocache from 'nocache';
|
|
125
127
|
|
|
126
128
|
|
|
127
129
|
var apiErr = function apiErr(options, ctx) {
|
|
@@ -165,13 +167,13 @@ var ssrReqAllow = function ssrReqAllow(ctx) {
|
|
|
165
167
|
var ddos = {};
|
|
166
168
|
|
|
167
169
|
exports.default = function () {
|
|
168
|
-
var _ref3 = (0, _asyncToGenerator3.default)( /*#__PURE__*/_regenerator2.default.mark(function
|
|
170
|
+
var _ref3 = (0, _asyncToGenerator3.default)( /*#__PURE__*/_regenerator2.default.mark(function _callee12(_ref2) {
|
|
169
171
|
var app = _ref2.app,
|
|
170
172
|
config = _ref2.config;
|
|
171
173
|
var cspConnectSrcVerify, appCp, appCpApiV1, jwtVerC, omConf, cm;
|
|
172
|
-
return _regenerator2.default.wrap(function
|
|
174
|
+
return _regenerator2.default.wrap(function _callee12$(_context12) {
|
|
173
175
|
while (1) {
|
|
174
|
-
switch (
|
|
176
|
+
switch (_context12.prev = _context12.next) {
|
|
175
177
|
case 0:
|
|
176
178
|
// if (yConf.security.isTire) {
|
|
177
179
|
// const proxy = httpProxy.createServer({
|
|
@@ -368,23 +370,66 @@ exports.default = function () {
|
|
|
368
370
|
return function (_x3, _x4) {
|
|
369
371
|
return _ref4.apply(this, arguments);
|
|
370
372
|
};
|
|
371
|
-
}()
|
|
372
|
-
// if (ctx.method !== "/") {
|
|
373
|
-
// const keys = [...Object.keys(yConf.proxyServer.proxy), yConf.proxyServer.apiKey];
|
|
374
|
-
// keys.forEach((key) => {
|
|
375
|
-
// const tk = _.trim(key);
|
|
376
|
-
// ctx.path = ctx.path.replace(config.appConf.server.basePath + "/" + tk, tk);
|
|
377
|
-
// })
|
|
378
|
-
// }
|
|
379
|
-
// await next()
|
|
380
|
-
);
|
|
373
|
+
}());
|
|
381
374
|
|
|
375
|
+
// cln init
|
|
382
376
|
app.use(function () {
|
|
383
377
|
var _ref5 = (0, _asyncToGenerator3.default)( /*#__PURE__*/_regenerator2.default.mark(function _callee2(ctx, next) {
|
|
384
|
-
var
|
|
378
|
+
var str, _str;
|
|
379
|
+
|
|
385
380
|
return _regenerator2.default.wrap(function _callee2$(_context2) {
|
|
386
381
|
while (1) {
|
|
387
382
|
switch (_context2.prev = _context2.next) {
|
|
383
|
+
case 0:
|
|
384
|
+
if (!(ctx.method.toUpperCase() === 'GET' && ctx.path === config.appConf.server.basePathMU + 'cln/init.js')) {
|
|
385
|
+
_context2.next = 7;
|
|
386
|
+
break;
|
|
387
|
+
}
|
|
388
|
+
|
|
389
|
+
(0, _control.noCache)(ctx);
|
|
390
|
+
str = _paths2.default.read(_paths2.default.ykConfigJsonClient(config.appName).file);
|
|
391
|
+
|
|
392
|
+
ctx.status = 200;
|
|
393
|
+
ctx.body = str;
|
|
394
|
+
_context2.next = 15;
|
|
395
|
+
break;
|
|
396
|
+
|
|
397
|
+
case 7:
|
|
398
|
+
if (!(ctx.method.toUpperCase() === 'POST' && ctx.path === config.appConf.server.basePathMU + 'cln/init')) {
|
|
399
|
+
_context2.next = 13;
|
|
400
|
+
break;
|
|
401
|
+
}
|
|
402
|
+
|
|
403
|
+
_str = _paths2.default.read(_paths2.default.ykConfigJsonServer);
|
|
404
|
+
|
|
405
|
+
ctx.status = 200;
|
|
406
|
+
ctx.body = _str;
|
|
407
|
+
_context2.next = 15;
|
|
408
|
+
break;
|
|
409
|
+
|
|
410
|
+
case 13:
|
|
411
|
+
_context2.next = 15;
|
|
412
|
+
return next();
|
|
413
|
+
|
|
414
|
+
case 15:
|
|
415
|
+
case 'end':
|
|
416
|
+
return _context2.stop();
|
|
417
|
+
}
|
|
418
|
+
}
|
|
419
|
+
}, _callee2, undefined);
|
|
420
|
+
}));
|
|
421
|
+
|
|
422
|
+
return function (_x5, _x6) {
|
|
423
|
+
return _ref5.apply(this, arguments);
|
|
424
|
+
};
|
|
425
|
+
}());
|
|
426
|
+
|
|
427
|
+
app.use(function () {
|
|
428
|
+
var _ref6 = (0, _asyncToGenerator3.default)( /*#__PURE__*/_regenerator2.default.mark(function _callee3(ctx, next) {
|
|
429
|
+
var keys;
|
|
430
|
+
return _regenerator2.default.wrap(function _callee3$(_context3) {
|
|
431
|
+
while (1) {
|
|
432
|
+
switch (_context3.prev = _context3.next) {
|
|
388
433
|
case 0:
|
|
389
434
|
if (config.appConf.server.basePath !== "/") {
|
|
390
435
|
keys = [].concat((0, _toConsumableArray3.default)((0, _keys2.default)(_config2.default.proxyServer.proxy)), [_config2.default.proxyServer.apiKey]);
|
|
@@ -394,19 +439,19 @@ exports.default = function () {
|
|
|
394
439
|
ctx.path = ctx.path.replace(config.appConf.server.basePath + "/" + tk, tk);
|
|
395
440
|
});
|
|
396
441
|
}
|
|
397
|
-
|
|
442
|
+
_context3.next = 3;
|
|
398
443
|
return next();
|
|
399
444
|
|
|
400
445
|
case 3:
|
|
401
446
|
case 'end':
|
|
402
|
-
return
|
|
447
|
+
return _context3.stop();
|
|
403
448
|
}
|
|
404
449
|
}
|
|
405
|
-
},
|
|
450
|
+
}, _callee3, undefined);
|
|
406
451
|
}));
|
|
407
452
|
|
|
408
|
-
return function (
|
|
409
|
-
return
|
|
453
|
+
return function (_x7, _x8) {
|
|
454
|
+
return _ref6.apply(this, arguments);
|
|
410
455
|
};
|
|
411
456
|
}());
|
|
412
457
|
|
|
@@ -426,69 +471,69 @@ exports.default = function () {
|
|
|
426
471
|
_server.global.__cpm__ = (0, _httpProxyMiddleware.createProxyMiddleware)((0, _extends3.default)({}, cm));
|
|
427
472
|
|
|
428
473
|
appCp(function () {
|
|
429
|
-
var
|
|
430
|
-
return _regenerator2.default.wrap(function
|
|
474
|
+
var _ref7 = (0, _asyncToGenerator3.default)( /*#__PURE__*/_regenerator2.default.mark(function _callee4(ctx, next) {
|
|
475
|
+
return _regenerator2.default.wrap(function _callee4$(_context4) {
|
|
431
476
|
while (1) {
|
|
432
|
-
switch (
|
|
477
|
+
switch (_context4.prev = _context4.next) {
|
|
433
478
|
case 0:
|
|
434
479
|
if (!(0, _om.isOmOpen)(ctx.req)) {
|
|
435
|
-
|
|
480
|
+
_context4.next = 9;
|
|
436
481
|
break;
|
|
437
482
|
}
|
|
438
483
|
|
|
439
484
|
if (!((0, _keys2.default)(omConf.router).length > 0)) {
|
|
440
|
-
|
|
485
|
+
_context4.next = 6;
|
|
441
486
|
break;
|
|
442
487
|
}
|
|
443
488
|
|
|
444
|
-
|
|
489
|
+
_context4.next = 4;
|
|
445
490
|
return (0, _koa2Connect2.default)(_server.global.__cpm__)(ctx, next);
|
|
446
491
|
|
|
447
492
|
case 4:
|
|
448
|
-
|
|
493
|
+
_context4.next = 7;
|
|
449
494
|
break;
|
|
450
495
|
|
|
451
496
|
case 6:
|
|
452
497
|
ctx.body = _msg.errMsg['server.om.target.none'];
|
|
453
498
|
|
|
454
499
|
case 7:
|
|
455
|
-
|
|
500
|
+
_context4.next = 11;
|
|
456
501
|
break;
|
|
457
502
|
|
|
458
503
|
case 9:
|
|
459
|
-
|
|
504
|
+
_context4.next = 11;
|
|
460
505
|
return next();
|
|
461
506
|
|
|
462
507
|
case 11:
|
|
463
508
|
case 'end':
|
|
464
|
-
return
|
|
509
|
+
return _context4.stop();
|
|
465
510
|
}
|
|
466
511
|
}
|
|
467
|
-
},
|
|
512
|
+
}, _callee4, undefined);
|
|
468
513
|
}));
|
|
469
514
|
|
|
470
|
-
return function (
|
|
471
|
-
return
|
|
515
|
+
return function (_x9, _x10) {
|
|
516
|
+
return _ref7.apply(this, arguments);
|
|
472
517
|
};
|
|
473
518
|
}());
|
|
474
519
|
}
|
|
475
520
|
|
|
476
521
|
appCp(function () {
|
|
477
|
-
var
|
|
478
|
-
return _regenerator2.default.wrap(function
|
|
522
|
+
var _ref8 = (0, _asyncToGenerator3.default)( /*#__PURE__*/_regenerator2.default.mark(function _callee5(ctx, next) {
|
|
523
|
+
return _regenerator2.default.wrap(function _callee5$(_context5) {
|
|
479
524
|
while (1) {
|
|
480
|
-
switch (
|
|
525
|
+
switch (_context5.prev = _context5.next) {
|
|
481
526
|
case 0:
|
|
482
527
|
if (!(ctx.method === 'GET' || ctx.method === 'POST' || jwtVerC(ctx.path))) {
|
|
483
|
-
|
|
528
|
+
_context5.next = 5;
|
|
484
529
|
break;
|
|
485
530
|
}
|
|
486
531
|
|
|
487
|
-
|
|
532
|
+
_context5.next = 3;
|
|
488
533
|
return next();
|
|
489
534
|
|
|
490
535
|
case 3:
|
|
491
|
-
|
|
536
|
+
_context5.next = 6;
|
|
492
537
|
break;
|
|
493
538
|
|
|
494
539
|
case 5:
|
|
@@ -499,26 +544,26 @@ exports.default = function () {
|
|
|
499
544
|
|
|
500
545
|
case 6:
|
|
501
546
|
case 'end':
|
|
502
|
-
return
|
|
547
|
+
return _context5.stop();
|
|
503
548
|
}
|
|
504
549
|
}
|
|
505
|
-
},
|
|
550
|
+
}, _callee5, undefined);
|
|
506
551
|
}));
|
|
507
552
|
|
|
508
|
-
return function (
|
|
509
|
-
return
|
|
553
|
+
return function (_x11, _x12) {
|
|
554
|
+
return _ref8.apply(this, arguments);
|
|
510
555
|
};
|
|
511
556
|
}());
|
|
512
557
|
|
|
513
558
|
app.use(function () {
|
|
514
|
-
var
|
|
559
|
+
var _ref9 = (0, _asyncToGenerator3.default)( /*#__PURE__*/_regenerator2.default.mark(function _callee6(ctx, next) {
|
|
515
560
|
var isInclude, include, exclude, referer;
|
|
516
|
-
return _regenerator2.default.wrap(function
|
|
561
|
+
return _regenerator2.default.wrap(function _callee6$(_context6) {
|
|
517
562
|
while (1) {
|
|
518
|
-
switch (
|
|
563
|
+
switch (_context6.prev = _context6.next) {
|
|
519
564
|
case 0:
|
|
520
565
|
if (!_config2.default.server.hotLinking.enabled) {
|
|
521
|
-
|
|
566
|
+
_context6.next = 21;
|
|
522
567
|
break;
|
|
523
568
|
}
|
|
524
569
|
|
|
@@ -546,51 +591,51 @@ exports.default = function () {
|
|
|
546
591
|
// console.log(ctx.href, referer, ctx.href.indexOf(jsUrl('hostname', referer)), 11);
|
|
547
592
|
|
|
548
593
|
if (!isInclude) {
|
|
549
|
-
|
|
594
|
+
_context6.next = 17;
|
|
550
595
|
break;
|
|
551
596
|
}
|
|
552
597
|
|
|
553
598
|
if (!(typeof referer === 'string' && referer !== '' && ctx.href.indexOf((0, _server.jsUrl)('hostname', referer)) !== -1)) {
|
|
554
|
-
|
|
599
|
+
_context6.next = 14;
|
|
555
600
|
break;
|
|
556
601
|
}
|
|
557
602
|
|
|
558
|
-
|
|
603
|
+
_context6.next = 12;
|
|
559
604
|
return next();
|
|
560
605
|
|
|
561
606
|
case 12:
|
|
562
|
-
|
|
607
|
+
_context6.next = 15;
|
|
563
608
|
break;
|
|
564
609
|
|
|
565
610
|
case 14:
|
|
566
611
|
ctx.status = 404;
|
|
567
612
|
|
|
568
613
|
case 15:
|
|
569
|
-
|
|
614
|
+
_context6.next = 19;
|
|
570
615
|
break;
|
|
571
616
|
|
|
572
617
|
case 17:
|
|
573
|
-
|
|
618
|
+
_context6.next = 19;
|
|
574
619
|
return next();
|
|
575
620
|
|
|
576
621
|
case 19:
|
|
577
|
-
|
|
622
|
+
_context6.next = 23;
|
|
578
623
|
break;
|
|
579
624
|
|
|
580
625
|
case 21:
|
|
581
|
-
|
|
626
|
+
_context6.next = 23;
|
|
582
627
|
return next();
|
|
583
628
|
|
|
584
629
|
case 23:
|
|
585
630
|
case 'end':
|
|
586
|
-
return
|
|
631
|
+
return _context6.stop();
|
|
587
632
|
}
|
|
588
633
|
}
|
|
589
|
-
},
|
|
634
|
+
}, _callee6, undefined);
|
|
590
635
|
}));
|
|
591
636
|
|
|
592
|
-
return function (
|
|
593
|
-
return
|
|
637
|
+
return function (_x13, _x14) {
|
|
638
|
+
return _ref9.apply(this, arguments);
|
|
594
639
|
};
|
|
595
640
|
}()
|
|
596
641
|
// if (!yConf.security.stupid) {
|
|
@@ -602,16 +647,16 @@ exports.default = function () {
|
|
|
602
647
|
|
|
603
648
|
if (config.appConf.server.sslify.redirect && !config.appConf.server.generate.enabled) {
|
|
604
649
|
appCp(function () {
|
|
605
|
-
var
|
|
650
|
+
var _ref10 = (0, _asyncToGenerator3.default)( /*#__PURE__*/_regenerator2.default.mark(function _callee7(ctx, next) {
|
|
606
651
|
var isRedirected;
|
|
607
|
-
return _regenerator2.default.wrap(function
|
|
652
|
+
return _regenerator2.default.wrap(function _callee7$(_context7) {
|
|
608
653
|
while (1) {
|
|
609
|
-
switch (
|
|
654
|
+
switch (_context7.prev = _context7.next) {
|
|
610
655
|
case 0:
|
|
611
656
|
isRedirected = (ctx.req.headers.cookie || '').indexOf(_config2.default.server.sslify.openKey) !== -1;
|
|
612
657
|
|
|
613
658
|
if (isRedirected) {
|
|
614
|
-
|
|
659
|
+
_context7.next = 7;
|
|
615
660
|
break;
|
|
616
661
|
}
|
|
617
662
|
|
|
@@ -619,37 +664,37 @@ exports.default = function () {
|
|
|
619
664
|
signed: false,
|
|
620
665
|
sameSite: _config2.default.server.cookieSameSite
|
|
621
666
|
});
|
|
622
|
-
|
|
667
|
+
_context7.next = 5;
|
|
623
668
|
return (0, _koaSslify2.default)((0, _extends3.default)({}, _config2.default.server.sslify.options))(ctx, next);
|
|
624
669
|
|
|
625
670
|
case 5:
|
|
626
|
-
|
|
671
|
+
_context7.next = 9;
|
|
627
672
|
break;
|
|
628
673
|
|
|
629
674
|
case 7:
|
|
630
|
-
|
|
675
|
+
_context7.next = 9;
|
|
631
676
|
return next();
|
|
632
677
|
|
|
633
678
|
case 9:
|
|
634
679
|
case 'end':
|
|
635
|
-
return
|
|
680
|
+
return _context7.stop();
|
|
636
681
|
}
|
|
637
682
|
}
|
|
638
|
-
},
|
|
683
|
+
}, _callee7, undefined);
|
|
639
684
|
}));
|
|
640
685
|
|
|
641
|
-
return function (
|
|
642
|
-
return
|
|
686
|
+
return function (_x15, _x16) {
|
|
687
|
+
return _ref10.apply(this, arguments);
|
|
643
688
|
};
|
|
644
689
|
}());
|
|
645
690
|
}
|
|
646
691
|
|
|
647
692
|
appCp(function () {
|
|
648
|
-
var
|
|
693
|
+
var _ref11 = (0, _asyncToGenerator3.default)( /*#__PURE__*/_regenerator2.default.mark(function _callee8(ctx, next) {
|
|
649
694
|
var parser, result, browserType, bt, bs, url, isNext;
|
|
650
|
-
return _regenerator2.default.wrap(function
|
|
695
|
+
return _regenerator2.default.wrap(function _callee8$(_context8) {
|
|
651
696
|
while (1) {
|
|
652
|
-
switch (
|
|
697
|
+
switch (_context8.prev = _context8.next) {
|
|
653
698
|
case 0:
|
|
654
699
|
parser = new _uaParserJs2.default();
|
|
655
700
|
|
|
@@ -680,23 +725,23 @@ exports.default = function () {
|
|
|
680
725
|
}
|
|
681
726
|
|
|
682
727
|
if (!isNext) {
|
|
683
|
-
|
|
728
|
+
_context8.next = 14;
|
|
684
729
|
break;
|
|
685
730
|
}
|
|
686
731
|
|
|
687
|
-
|
|
732
|
+
_context8.next = 14;
|
|
688
733
|
return next();
|
|
689
734
|
|
|
690
735
|
case 14:
|
|
691
736
|
case 'end':
|
|
692
|
-
return
|
|
737
|
+
return _context8.stop();
|
|
693
738
|
}
|
|
694
739
|
}
|
|
695
|
-
},
|
|
740
|
+
}, _callee8, undefined);
|
|
696
741
|
}));
|
|
697
742
|
|
|
698
|
-
return function (
|
|
699
|
-
return
|
|
743
|
+
return function (_x17, _x18) {
|
|
744
|
+
return _ref11.apply(this, arguments);
|
|
700
745
|
};
|
|
701
746
|
}());
|
|
702
747
|
|
|
@@ -713,11 +758,11 @@ exports.default = function () {
|
|
|
713
758
|
|
|
714
759
|
if (_config2.default.security.stupid) {
|
|
715
760
|
appCpApiV1(function () {
|
|
716
|
-
var
|
|
761
|
+
var _ref12 = (0, _asyncToGenerator3.default)( /*#__PURE__*/_regenerator2.default.mark(function _callee9(ctx, next) {
|
|
717
762
|
var isNext, rHost, rOrigin, rReferer;
|
|
718
|
-
return _regenerator2.default.wrap(function
|
|
763
|
+
return _regenerator2.default.wrap(function _callee9$(_context9) {
|
|
719
764
|
while (1) {
|
|
720
|
-
switch (
|
|
765
|
+
switch (_context9.prev = _context9.next) {
|
|
721
766
|
case 0:
|
|
722
767
|
isNext = true;
|
|
723
768
|
rHost = (0, _server.jsUrl)('hostname', ctx.get('host'));
|
|
@@ -729,15 +774,15 @@ exports.default = function () {
|
|
|
729
774
|
}
|
|
730
775
|
|
|
731
776
|
if (!isNext) {
|
|
732
|
-
|
|
777
|
+
_context9.next = 10;
|
|
733
778
|
break;
|
|
734
779
|
}
|
|
735
780
|
|
|
736
|
-
|
|
781
|
+
_context9.next = 8;
|
|
737
782
|
return next();
|
|
738
783
|
|
|
739
784
|
case 8:
|
|
740
|
-
|
|
785
|
+
_context9.next = 11;
|
|
741
786
|
break;
|
|
742
787
|
|
|
743
788
|
case 10:
|
|
@@ -748,14 +793,14 @@ exports.default = function () {
|
|
|
748
793
|
|
|
749
794
|
case 11:
|
|
750
795
|
case 'end':
|
|
751
|
-
return
|
|
796
|
+
return _context9.stop();
|
|
752
797
|
}
|
|
753
798
|
}
|
|
754
|
-
},
|
|
799
|
+
}, _callee9, undefined);
|
|
755
800
|
}));
|
|
756
801
|
|
|
757
|
-
return function (
|
|
758
|
-
return
|
|
802
|
+
return function (_x19, _x20) {
|
|
803
|
+
return _ref12.apply(this, arguments);
|
|
759
804
|
};
|
|
760
805
|
}()
|
|
761
806
|
// if (ctx.method === 'GET' || ctx.method === 'POST' || jwtVerC(ctx.path)) {
|
|
@@ -769,29 +814,29 @@ exports.default = function () {
|
|
|
769
814
|
);
|
|
770
815
|
|
|
771
816
|
app.use(function () {
|
|
772
|
-
var
|
|
773
|
-
return _regenerator2.default.wrap(function
|
|
817
|
+
var _ref13 = (0, _asyncToGenerator3.default)( /*#__PURE__*/_regenerator2.default.mark(function _callee10(ctx, next) {
|
|
818
|
+
return _regenerator2.default.wrap(function _callee10$(_context10) {
|
|
774
819
|
while (1) {
|
|
775
|
-
switch (
|
|
820
|
+
switch (_context10.prev = _context10.next) {
|
|
776
821
|
case 0:
|
|
777
822
|
// ctx.set('Surrogate-Control', 'no-store');
|
|
778
823
|
// ctx.set('Cache-Control', 'no-store, no-cache, must-revalidate, proxy-revalidate');
|
|
779
824
|
// ctx.set('Pragma', 'no-cache');
|
|
780
825
|
// ctx.set('Expires', '0');
|
|
781
826
|
(0, _control.noCache)(ctx);
|
|
782
|
-
|
|
827
|
+
_context10.next = 3;
|
|
783
828
|
return next();
|
|
784
829
|
|
|
785
830
|
case 3:
|
|
786
831
|
case 'end':
|
|
787
|
-
return
|
|
832
|
+
return _context10.stop();
|
|
788
833
|
}
|
|
789
834
|
}
|
|
790
|
-
},
|
|
835
|
+
}, _callee10, undefined);
|
|
791
836
|
}));
|
|
792
837
|
|
|
793
|
-
return function (
|
|
794
|
-
return
|
|
838
|
+
return function (_x21, _x22) {
|
|
839
|
+
return _ref13.apply(this, arguments);
|
|
795
840
|
};
|
|
796
841
|
}());
|
|
797
842
|
}
|
|
@@ -805,10 +850,10 @@ exports.default = function () {
|
|
|
805
850
|
}
|
|
806
851
|
|
|
807
852
|
app.use(function () {
|
|
808
|
-
var
|
|
809
|
-
return _regenerator2.default.wrap(function
|
|
853
|
+
var _ref14 = (0, _asyncToGenerator3.default)( /*#__PURE__*/_regenerator2.default.mark(function _callee11(ctx, next) {
|
|
854
|
+
return _regenerator2.default.wrap(function _callee11$(_context11) {
|
|
810
855
|
while (1) {
|
|
811
|
-
switch (
|
|
856
|
+
switch (_context11.prev = _context11.next) {
|
|
812
857
|
case 0:
|
|
813
858
|
// const csrfCookie = ctx.cookies.get(variable.csrfCookie, {signed: false});
|
|
814
859
|
// console.log(ctx.path, ctx.req.headers.cookie, 111);
|
|
@@ -824,28 +869,28 @@ exports.default = function () {
|
|
|
824
869
|
cookieDomain: config.appConf.cookieDomain || _server.Cookies.getDefCookieDomain(ctx.hostname)
|
|
825
870
|
}, ctx.req.crossParams);
|
|
826
871
|
|
|
827
|
-
|
|
872
|
+
_context11.next = 3;
|
|
828
873
|
return next();
|
|
829
874
|
|
|
830
875
|
case 3:
|
|
831
876
|
case 'end':
|
|
832
|
-
return
|
|
877
|
+
return _context11.stop();
|
|
833
878
|
}
|
|
834
879
|
}
|
|
835
|
-
},
|
|
880
|
+
}, _callee11, undefined);
|
|
836
881
|
}));
|
|
837
882
|
|
|
838
|
-
return function (
|
|
839
|
-
return
|
|
883
|
+
return function (_x23, _x24) {
|
|
884
|
+
return _ref14.apply(this, arguments);
|
|
840
885
|
};
|
|
841
886
|
}());
|
|
842
887
|
|
|
843
|
-
case
|
|
888
|
+
case 17:
|
|
844
889
|
case 'end':
|
|
845
|
-
return
|
|
890
|
+
return _context12.stop();
|
|
846
891
|
}
|
|
847
892
|
}
|
|
848
|
-
},
|
|
893
|
+
}, _callee12, undefined);
|
|
849
894
|
}));
|
|
850
895
|
|
|
851
896
|
return function (_x) {
|
package/server/proxy/web.js
CHANGED
|
@@ -244,6 +244,10 @@ exports.default = function () {
|
|
|
244
244
|
}
|
|
245
245
|
});
|
|
246
246
|
|
|
247
|
+
if (_config2.default.security.isStupid) {
|
|
248
|
+
proxyReq.setHeader(_def.variable.adjoinIpHeader, (0, _server.getClientIP)(req, { stupid: true }));
|
|
249
|
+
}
|
|
250
|
+
|
|
247
251
|
// const keys = Object.keys(yConf.proxyServer.proxy).join('|')
|
|
248
252
|
// if (req.crossParams.originUrl.match(new RegExp(`^\/(${keys})\/`))) {
|
|
249
253
|
// _.forEach(yConf.proxyServer.proxyHeaders, dt => {
|
|
@@ -341,6 +345,7 @@ exports.default = function () {
|
|
|
341
345
|
};
|
|
342
346
|
if (req.url.indexOf(_config2.default.proxyServer.ws.key) !== -1) {
|
|
343
347
|
var headers = {};
|
|
348
|
+
req.url = req.url.replace('' + config.appConf.server.basePathMU, '/');
|
|
344
349
|
_server._.forEach((0, _conf.serverHeaders)({ req: req, config: config }), function (v, k) {
|
|
345
350
|
if (v.data) {
|
|
346
351
|
headers[k] = v.data;
|
package/template/yk.plugin.js
CHANGED
package/utils/conf.js
ADDED
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.getConf = undefined;
|
|
7
|
+
|
|
8
|
+
var _yakuza = require('yakuza1');
|
|
9
|
+
|
|
10
|
+
// import KY from 'yakuza1/lib/ky/universal'
|
|
11
|
+
// import {connect, req} from 'yakuza1/lib/ws'
|
|
12
|
+
|
|
13
|
+
// only server side
|
|
14
|
+
// export const setConf = async (orbAddr, key, conf) => {
|
|
15
|
+
// if (checkServer()) {
|
|
16
|
+
// await KY.post(`${orbAddr}/apiv2/yk0/conf/set`, {
|
|
17
|
+
// body: JSON.stringify({
|
|
18
|
+
// key,
|
|
19
|
+
// conf
|
|
20
|
+
// }),
|
|
21
|
+
// });
|
|
22
|
+
// } else {
|
|
23
|
+
// // await req("yk0/conf/set", {
|
|
24
|
+
// // body: {
|
|
25
|
+
// // key,
|
|
26
|
+
// // conf,
|
|
27
|
+
// // },
|
|
28
|
+
// // });
|
|
29
|
+
// }
|
|
30
|
+
// }
|
|
31
|
+
|
|
32
|
+
// client side
|
|
33
|
+
var getConf = exports.getConf = function getConf(basePathMU) {
|
|
34
|
+
var conf = {};
|
|
35
|
+
if ((0, _yakuza.checkServer)()) {} else {
|
|
36
|
+
var http = new XMLHttpRequest();
|
|
37
|
+
var url = (basePathMU || '/') + 'cln/init';
|
|
38
|
+
http.open('POST', url, false);
|
|
39
|
+
http.onreadystatechange = function () {
|
|
40
|
+
//Call a function when the state changes.
|
|
41
|
+
if (http.readyState === 4 && http.status === 200) {
|
|
42
|
+
conf = http.responseText;
|
|
43
|
+
}
|
|
44
|
+
};
|
|
45
|
+
http.send();
|
|
46
|
+
}
|
|
47
|
+
return conf;
|
|
48
|
+
};
|
package/utils/inclusive.js
CHANGED
|
@@ -65,20 +65,23 @@ var _getPort = require('get-port');
|
|
|
65
65
|
|
|
66
66
|
var _getPort2 = _interopRequireDefault(_getPort);
|
|
67
67
|
|
|
68
|
+
var _conf = require('./conf');
|
|
69
|
+
|
|
68
70
|
function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } else { var newObj = {}; if (obj != null) { for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) newObj[key] = obj[key]; } } newObj.default = obj; return newObj; } }
|
|
69
71
|
|
|
70
72
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
71
73
|
|
|
72
74
|
var appDirectory = _paths2.default.appDirectory,
|
|
73
|
-
ykCacheDir = _paths2.default.ykCacheDir,
|
|
74
|
-
ykCacheTmpDir = _paths2.default.ykCacheTmpDir,
|
|
75
75
|
ykConfigJs = _paths2.default.ykConfigJs,
|
|
76
76
|
ykConfigJson = _paths2.default.ykConfigJson,
|
|
77
77
|
ykConfigJsonClient = _paths2.default.ykConfigJsonClient,
|
|
78
|
+
ykConfigJsonServer = _paths2.default.ykConfigJsonServer,
|
|
78
79
|
path = _paths2.default.path,
|
|
80
|
+
mkdir = _paths2.default.mkdir,
|
|
79
81
|
read = _paths2.default.read,
|
|
80
82
|
access = _paths2.default.access,
|
|
81
|
-
envPath = _paths2.default.envPath
|
|
83
|
+
envPath = _paths2.default.envPath,
|
|
84
|
+
sep = _paths2.default.sep;
|
|
82
85
|
|
|
83
86
|
|
|
84
87
|
var transformJs = function transformJs(str) {
|
|
@@ -98,7 +101,10 @@ var packageConf = function packageConf() {
|
|
|
98
101
|
if (str) {
|
|
99
102
|
try {
|
|
100
103
|
var json = JSON.parse(str);
|
|
101
|
-
(0, _assign2.default)(pkg,
|
|
104
|
+
(0, _assign2.default)(pkg, {
|
|
105
|
+
name: json.name,
|
|
106
|
+
version: json.version
|
|
107
|
+
});
|
|
102
108
|
} catch (e) {}
|
|
103
109
|
}
|
|
104
110
|
|
|
@@ -179,7 +185,7 @@ var render = function () {
|
|
|
179
185
|
ykServerEnv = _ref.ykServerEnv,
|
|
180
186
|
ykPkg = _ref.pkg;
|
|
181
187
|
|
|
182
|
-
var _ykConfig, ykConf, processEnv, aliasDir, conf, cspLoop, setConfValue, setConfCSP, setConf, hostname, port, ykServer, orbAddr, tip;
|
|
188
|
+
var _ykConfig, ykConf, processEnv, aliasDir, conf, cspLoop, setConfValue, setConfCSP, setConf, hostname, port, ykServer, orbAddr, appPortUsed, tip, confStr, serverConfCipher, scKey, serverConfStr, serverConfStrTrans;
|
|
183
189
|
|
|
184
190
|
return _regenerator2.default.wrap(function _callee2$(_context2) {
|
|
185
191
|
while (1) {
|
|
@@ -270,6 +276,7 @@ var render = function () {
|
|
|
270
276
|
orbSSL: false,
|
|
271
277
|
cHost: null,
|
|
272
278
|
basePath: '/',
|
|
279
|
+
basePathMU: '/',
|
|
273
280
|
openBasePath: false,
|
|
274
281
|
// openHmr: true,
|
|
275
282
|
|
|
@@ -780,10 +787,12 @@ var render = function () {
|
|
|
780
787
|
conf.proxyServer.proxy.apiv2 = orbAddr;
|
|
781
788
|
conf.proxyServer.proxy.apiv3 = orbAddr;
|
|
782
789
|
conf.proxyServer.proxy[conf.proxyServer.ws.key] = orbAddr;
|
|
790
|
+
conf.server.orbAddr = orbAddr;
|
|
783
791
|
|
|
784
792
|
conf.server.csp.imgSrc = _yakuza._.uniq([].concat((0, _toConsumableArray3.default)(conf.server.csp.imgSrc || []), (0, _toConsumableArray3.default)(conf.server.tfs.fastdfs.domain)));
|
|
785
793
|
|
|
786
|
-
|
|
794
|
+
appPortUsed = [];
|
|
795
|
+
_context2.next = 51;
|
|
787
796
|
return _yakuza._.asyncMap(conf.router.config, function () {
|
|
788
797
|
var _ref3 = (0, _asyncToGenerator3.default)( /*#__PURE__*/_regenerator2.default.mark(function _callee(v, key) {
|
|
789
798
|
var name, arr, length, num;
|
|
@@ -845,6 +854,9 @@ var render = function () {
|
|
|
845
854
|
v.server.basePath = '' + name.toLowerCase();
|
|
846
855
|
}
|
|
847
856
|
}
|
|
857
|
+
if (v.server.openBasePath) {
|
|
858
|
+
v.server.basePathMU = _yakuza._.bothAddFix(v.server.basePath, "/");
|
|
859
|
+
}
|
|
848
860
|
|
|
849
861
|
if (v.server.generate.enabled) {
|
|
850
862
|
v.server.generate.enabled = !conf.security.isStupid;
|
|
@@ -863,40 +875,41 @@ var render = function () {
|
|
|
863
875
|
_context.t0 = v.port;
|
|
864
876
|
|
|
865
877
|
if (_context.t0) {
|
|
866
|
-
_context.next =
|
|
878
|
+
_context.next = 26;
|
|
867
879
|
break;
|
|
868
880
|
}
|
|
869
881
|
|
|
870
|
-
_context.next =
|
|
882
|
+
_context.next = 25;
|
|
871
883
|
return (0, _getPort2.default)({ port: pool });
|
|
872
884
|
|
|
873
|
-
case
|
|
885
|
+
case 25:
|
|
874
886
|
_context.t0 = _context.sent;
|
|
875
887
|
|
|
876
|
-
case
|
|
888
|
+
case 26:
|
|
877
889
|
v.port = _context.t0;
|
|
878
890
|
|
|
879
891
|
pool = _yakuza._.without(pool, v.port);
|
|
880
892
|
|
|
881
893
|
if (!v.server.generate.enabled) {
|
|
882
|
-
_context.next =
|
|
894
|
+
_context.next = 34;
|
|
883
895
|
break;
|
|
884
896
|
}
|
|
885
897
|
|
|
886
|
-
_context.next =
|
|
898
|
+
_context.next = 31;
|
|
887
899
|
return (0, _getPort2.default)({ port: appPool });
|
|
888
900
|
|
|
889
|
-
case
|
|
901
|
+
case 31:
|
|
890
902
|
_context.t1 = _context.sent;
|
|
891
|
-
_context.next =
|
|
903
|
+
_context.next = 35;
|
|
892
904
|
break;
|
|
893
905
|
|
|
894
|
-
case
|
|
906
|
+
case 34:
|
|
895
907
|
_context.t1 = v.port;
|
|
896
908
|
|
|
897
|
-
case
|
|
909
|
+
case 35:
|
|
898
910
|
v.appPort = _context.t1;
|
|
899
911
|
|
|
912
|
+
appPortUsed.push(v.appPort);
|
|
900
913
|
appPool = _yakuza._.without(appPool, v.appPort);
|
|
901
914
|
|
|
902
915
|
// console.log(v.appPort);
|
|
@@ -927,7 +940,7 @@ var render = function () {
|
|
|
927
940
|
|
|
928
941
|
conf.router.config[key] = v;
|
|
929
942
|
|
|
930
|
-
case
|
|
943
|
+
case 41:
|
|
931
944
|
case 'end':
|
|
932
945
|
return _context.stop();
|
|
933
946
|
}
|
|
@@ -940,7 +953,7 @@ var render = function () {
|
|
|
940
953
|
};
|
|
941
954
|
}());
|
|
942
955
|
|
|
943
|
-
case
|
|
956
|
+
case 51:
|
|
944
957
|
// console.log(conf.router.config);
|
|
945
958
|
|
|
946
959
|
conf.shareRule.app = conf.shareRule.app.map(function (ap) {
|
|
@@ -1014,14 +1027,52 @@ var render = function () {
|
|
|
1014
1027
|
// _.readOnly(global, '__enc_encryptType__', conf.security.encrypt);
|
|
1015
1028
|
// _.readOnly(global, '__yConf_ak__', conf.ak);
|
|
1016
1029
|
// global.FormData = FormData;
|
|
1017
|
-
|
|
1030
|
+
|
|
1031
|
+
// const es = mixin.symmetry.ECB.encrypt(JSON.stringify(conf));
|
|
1032
|
+
// fs.writeFileSync(ykConfigJson, JSON.stringify({es}), 'utf8');
|
|
1033
|
+
|
|
1034
|
+
confStr = (0, _stringify2.default)(conf);
|
|
1035
|
+
serverConfCipher = _encrypt.mixin.symmetry.CBC.encrypt(confStr);
|
|
1036
|
+
|
|
1037
|
+
// let omitStr = JSON.stringify(_.omit(conf, ['versionSha', 'cmd']));
|
|
1038
|
+
// appPortUsed.forEach(p => {
|
|
1039
|
+
// omitStr = omitStr.replace(p.toString(), '');
|
|
1040
|
+
// })
|
|
1041
|
+
|
|
1042
|
+
scKey = (0, _yakuza.md5)(confStr).substring(2, 8);
|
|
1043
|
+
|
|
1044
|
+
|
|
1045
|
+
_yakuza._.forEach(conf.router.config, function (v, k) {
|
|
1046
|
+
if (v.enabled) {
|
|
1047
|
+
var clientConfStr = _encrypt.mixin.symmetry.CBC.encrypt((0, _stringify2.default)({
|
|
1048
|
+
key: scKey,
|
|
1049
|
+
basePathMU: v.server.basePathMU,
|
|
1050
|
+
security: {
|
|
1051
|
+
isStupid: conf.security.isStupid
|
|
1052
|
+
}
|
|
1053
|
+
}));
|
|
1054
|
+
var clientConfStrCipher = (0, _stringify2.default)({ es: clientConfStr });
|
|
1055
|
+
var clientConfStrTrans = _encrypt.mixin.symmetry.CBC.encrypt(clientConfStrCipher);
|
|
1056
|
+
var ycp = ykConfigJsonClient(k);
|
|
1057
|
+
mkdir(ycp.dir);
|
|
1058
|
+
_fs2.default.writeFileSync(ycp.file, 'var __cln_init__ = "' + clientConfStrTrans + '"', 'utf8');
|
|
1059
|
+
}
|
|
1060
|
+
});
|
|
1061
|
+
|
|
1062
|
+
serverConfStr = (0, _stringify2.default)({ es: serverConfCipher });
|
|
1063
|
+
serverConfStrTrans = _encrypt.mixin.symmetry.CBC.encrypt(serverConfStr, _encrypt.mixin.getKey(scKey));
|
|
1064
|
+
|
|
1065
|
+
_fs2.default.writeFileSync(ykConfigJson, serverConfStr, 'utf8');
|
|
1066
|
+
_fs2.default.writeFileSync(ykConfigJsonServer, serverConfStrTrans, 'utf8');
|
|
1067
|
+
// await setYk0Conf(orbAddr, scKey, serverConfStrTrans);
|
|
1068
|
+
|
|
1018
1069
|
// if (conf.https) {
|
|
1019
1070
|
// process.env["NODE_TLS_REJECT_UNAUTHORIZED"] = 0;
|
|
1020
1071
|
// }
|
|
1021
1072
|
|
|
1022
1073
|
return _context2.abrupt('return', { conf: conf });
|
|
1023
1074
|
|
|
1024
|
-
case
|
|
1075
|
+
case 65:
|
|
1025
1076
|
case 'end':
|
|
1026
1077
|
return _context2.stop();
|
|
1027
1078
|
}
|
package/utils/secret.js
CHANGED
|
@@ -283,7 +283,7 @@ var set = exports.set = function set(_ref3) {
|
|
|
283
283
|
_context4.prev = 8;
|
|
284
284
|
hs = "Set-Cookie";
|
|
285
285
|
_context4.next = 12;
|
|
286
|
-
return _universal2.default.post(($yk.appConf.ssr ? $yk.origin :
|
|
286
|
+
return _universal2.default.post(($yk.appConf.ssr ? $yk.origin : $yk.server.basePathMU) + "apiv2/support/svc/uc", {
|
|
287
287
|
body: bodyStr,
|
|
288
288
|
headers: ucHeaders,
|
|
289
289
|
timeout: timeout
|
|
@@ -446,7 +446,7 @@ var set = exports.set = function set(_ref3) {
|
|
|
446
446
|
|
|
447
447
|
secretBodyStr = mixin.symmetry.CBC.encrypt(secretBodyStr);
|
|
448
448
|
_context6.next = 5;
|
|
449
|
-
return _universal2.default.post("
|
|
449
|
+
return _universal2.default.post($yk.server.basePathMU + "apiv2/support/svc/getClient", {
|
|
450
450
|
body: secretBodyStr,
|
|
451
451
|
timeout: _config2.default.server.infoTimeout + 9000,
|
|
452
452
|
retry: 2
|