|
@@ -40,6 +40,8 @@ app.locals.startTime = moment().format('YYYYMMDDHH'); |
|
@@ -40,6 +40,8 @@ app.locals.startTime = moment().format('YYYYMMDDHH'); |
40
|
// 全局注册library
|
40
|
// 全局注册library
|
41
|
yohoLib.global(config);
|
41
|
yohoLib.global(config);
|
42
|
|
42
|
|
|
|
43
|
+const logger = global.yoho.logger;
|
|
|
44
|
+
|
43
|
// zookeeper
|
45
|
// zookeeper
|
44
|
if (config.zookeeperServer) {
|
46
|
if (config.zookeeperServer) {
|
45
|
require('yoho-zookeeper')(config.zookeeperServer, 'wap', app.locals.wap = {}, global.yoho.cache);
|
47
|
require('yoho-zookeeper')(config.zookeeperServer, 'wap', app.locals.wap = {}, global.yoho.cache);
|
|
@@ -52,6 +54,23 @@ app.set('etag', false); |
|
@@ -52,6 +54,23 @@ app.set('etag', false); |
52
|
|
54
|
|
53
|
app.enable('trust proxy');
|
55
|
app.enable('trust proxy');
|
54
|
|
56
|
|
|
|
57
|
+const safeStringify = require('fast-safe-stringify');
|
|
|
58
|
+
|
|
|
59
|
+// 循环对象检测
|
|
|
60
|
+app.set('json replacer', function(key, value) {
|
|
|
61
|
+ if (!key) {
|
|
|
62
|
+ let safeStr = safeStringify(value);
|
|
|
63
|
+
|
|
|
64
|
+ if (/\[Circular\]/.test(safeStr)) {
|
|
|
65
|
+ logger.error('stringify error:', value);
|
|
|
66
|
+ }
|
|
|
67
|
+
|
|
|
68
|
+ return JSON.parse(safeStr);
|
|
|
69
|
+ }
|
|
|
70
|
+
|
|
|
71
|
+ return value;
|
|
|
72
|
+});
|
|
|
73
|
+
|
55
|
// 请求限制中间件
|
74
|
// 请求限制中间件
|
56
|
if (!app.locals.devEnv) {
|
75
|
if (!app.locals.devEnv) {
|
57
|
app.use(require('./doraemon/middleware/limiter'));
|
76
|
app.use(require('./doraemon/middleware/limiter'));
|
|
@@ -60,8 +79,6 @@ if (!app.locals.devEnv) { |
|
@@ -60,8 +79,6 @@ if (!app.locals.devEnv) { |
60
|
// 指定libray目录
|
79
|
// 指定libray目录
|
61
|
global.utils = path.resolve('./utils');
|
80
|
global.utils = path.resolve('./utils');
|
62
|
|
81
|
|
63
|
-const logger = global.yoho.logger;
|
|
|
64
|
-
|
|
|
65
|
// 访问域名层级
|
82
|
// 访问域名层级
|
66
|
app.set('subdomain offset', 3);
|
83
|
app.set('subdomain offset', 3);
|
67
|
app.use(global.yoho.hbs({
|
84
|
app.use(global.yoho.hbs({
|