huxy-server 1.0.9 → 1.0.10

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.
Files changed (2) hide show
  1. package/package.json +1 -1
  2. package/src/index.js +50 -49
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "huxy-server",
3
- "version": "1.0.9",
3
+ "version": "1.0.10",
4
4
  "description": "一个精炼、高性能的 Express.js 服务器模板,为现代 Node.js 应用程序设计,提供灵活的功能和最佳实践。",
5
5
  "type": "module",
6
6
  "module": "./src/index.js",
package/src/index.js CHANGED
@@ -1,20 +1,20 @@
1
1
  import {
2
- startServer as C,
3
- startStatic as L,
4
- logger as te,
5
- createLogger as re,
6
- dateTime as se,
7
- localIPs as oe,
8
- nodeArgs as ae,
9
- getEnvConfig as ne,
10
- checkPort as ie,
11
- getDirName as pe,
12
- resolvePath as ce,
2
+ startServer as L,
3
+ startStatic as U,
4
+ logger as re,
5
+ createLogger as se,
6
+ dateTime as oe,
7
+ localIPs as ae,
8
+ nodeArgs as ne,
9
+ getEnvConfig as ie,
10
+ checkPort as pe,
11
+ getDirName as ce,
12
+ resolvePath as ue,
13
13
  } from 'huxy-node-server';
14
- import {createProxyMiddleware as S, fixRequestBody as k} from 'http-proxy-middleware';
15
- import {dateTime as O} from 'huxy-node-server';
16
- import H from 'jsonwebtoken';
17
- var x = (r, {secret: e = '', ...t} = {}) => H.verify(r, e, t);
14
+ import {createProxyMiddleware as k, fixRequestBody as O} from 'http-proxy-middleware';
15
+ import {dateTime as M} from 'huxy-node-server';
16
+ import $ from 'jsonwebtoken';
17
+ var x = (r, {secret: e = '', ...t} = {}) => $.verify(r, e, t);
18
18
  var y =
19
19
  (r = {}) =>
20
20
  (e, t, s) => {
@@ -38,7 +38,7 @@ var y =
38
38
  : (e.log.warn({err: o, ip: e.ip}, '\u8BA4\u8BC1\u5931\u8D25: \u5185\u90E8\u670D\u52A1\u5668\u9519\u8BEF'), t.status(500).json({message: '\u5185\u90E8\u670D\u52A1\u5668\u9519\u8BEF'}));
39
39
  }
40
40
  };
41
- var $ =
41
+ var v =
42
42
  ({whiteAuthKeys: r = [], whiteAuthPaths: e = [], config: t = {}}) =>
43
43
  (s, n, a) => {
44
44
  if (s.method === 'OPTIONS' || e.includes(s.path)) return a();
@@ -50,30 +50,30 @@ var $ =
50
50
  let {secret: c, expiresIn: p, algorithm: l, issuer: h} = t;
51
51
  y({secret: c, expiresIn: p, algorithm: l, issuer: h})(s, n, a);
52
52
  },
53
- w = $;
54
- var v = ['origin', 'referer', 'x-forwarded-for', 'x-real-ip', 'cf-connecting-ip', 'cf-ipcountry', 'cf-ray', 'x-huxy-auth'],
55
- I = ['x-powered-by', 'server'],
53
+ w = v;
54
+ var I = ['origin', 'referer', 'x-forwarded-for', 'x-real-ip', 'cf-connecting-ip', 'cf-ipcountry', 'cf-ray', 'x-huxy-auth'],
55
+ R = ['x-powered-by', 'server'],
56
56
  A = (r, e) => {
57
57
  let t = new Headers(r);
58
- return (v.forEach(s => t.delete(s)), t.set('Host', e), t.set('User-Agent', 'IHUXY-API/1.0'), t);
58
+ return (I.forEach(s => t.delete(s)), t.set('Host', e), t.set('User-Agent', 'IHUXY-API/1.0'), t);
59
59
  },
60
60
  P = r => {
61
61
  let e = new Headers(r);
62
62
  return (
63
- I.forEach(t => e.delete(t)),
63
+ R.forEach(t => e.delete(t)),
64
64
  e.set('Access-Control-Allow-Origin', '*'),
65
65
  e.set('X-Content-Type-Options', 'nosniff'),
66
66
  e.get('content-type')?.includes('text/event-stream') && ((e['Cache-Control'] = 'no-cache, no-transform'), (e.Connection = 'keep-alive'), (e['X-Accel-Buffering'] = 'no')),
67
67
  e
68
68
  );
69
69
  };
70
- var R = r => Object.prototype.toString.call(r).slice(8, -1).toLowerCase(),
71
- E = r => (R(r) === 'object' ? [r] : Array.isArray(r) ? r : []),
72
- g = (r, e) => E(r).map(t => ((t.prefix = `${e}${t.prefix ?? (t.name ? `/${t.name}` : '')}`.replace('//', '/')), t)),
70
+ var E = r => Object.prototype.toString.call(r).slice(8, -1).toLowerCase(),
71
+ S = r => (E(r) === 'object' ? [r] : Array.isArray(r) ? r : []),
72
+ g = (r, e) => S(r).map(t => ((t.prefix = `${e}${t.prefix ?? (t.name ? `/${t.name}` : '')}`.replace('//', '/')), t)),
73
73
  T = r => (Array.isArray(r) ? r : []).filter(Boolean),
74
74
  j = (r, e) => [...new Set(['/', '/health', e, ...(Array.isArray(r) ? r : [])])].filter(Boolean).map(t => `${e}${t}`.replace('//', '/'));
75
75
  var d = (r, e = '/') => {
76
- let t = {status: 'OK', message: `API \u670D\u52A1\u5668\u8FD0\u884C\u4E2D \u{1F449} ${e}`, timestamp: O(), uptime: process.uptime(), memoryUsage: process.memoryUsage()};
76
+ let t = {status: 'OK', message: `API \u670D\u52A1\u5668\u8FD0\u884C\u4E2D \u{1F449} ${e}`, timestamp: M(), uptime: process.uptime(), memoryUsage: process.memoryUsage()};
77
77
  (r.get(e, (s, n) => {
78
78
  n.status(200).json(t);
79
79
  }),
@@ -81,17 +81,18 @@ var d = (r, e = '/') => {
81
81
  n.status(200).json(t);
82
82
  }));
83
83
  },
84
+ H = 0,
84
85
  W = ({target: r = 'http://', prefix: e, withPrefix: t, preserve: s = !0, ...n} = {}) => ({
85
86
  target: r,
86
87
  changeOrigin: !0,
87
88
  selfHandleResponse: !1,
88
89
  on: {
89
- proxyReq: (a, o, i) => (!s && A(a.headers, r), k(a, o, i)),
90
+ proxyReq: (a, o, i) => (!s && A(a.headers, r), O(a, o, i)),
90
91
  proxyRes: (a, o, i) => {
91
92
  !s && P(a.headers);
92
93
  },
93
94
  error: (a, o, i) => {
94
- (o.log.error({err: a}, '\u4EE3\u7406\u9519\u8BEF'), i.headersSent || i.status(502).json({error: '\u7F51\u5173\u9519\u8BEF'}));
95
+ (H || ((H = 1), o.log.error({err: a}, '\u4EE3\u7406\u9519\u8BEF')), i.headersSent || i.status(502).json({error: '\u7F51\u5173\u9519\u8BEF'}));
95
96
  },
96
97
  },
97
98
  ...n,
@@ -104,13 +105,13 @@ var d = (r, e = '/') => {
104
105
  let u = w({whiteAuthKeys: T(a), whitePathList: j(o, s), config: e});
105
106
  return (
106
107
  i.map(({prefix: c, target: p, withPrefix: l = !0, ...h}) => {
107
- ((p = l ? `${p}${c}` : p), r.use(c, u, S(W({prefix: c, target: p, withPrefix: l, ...h}))), t.info(`\u2705 \u4EE3\u7406\u4E2D ${c} \u{1F449} ${p}`));
108
+ ((p = l ? `${p}${c}` : p), r.use(c, u, k(W({prefix: c, target: p, withPrefix: l, ...h}))), t.info(`\u2705 \u4EE3\u7406\u4E2D ${c} \u{1F449} ${p}`));
108
109
  }),
109
110
  !0
110
111
  );
111
112
  },
112
113
  m = B;
113
- var M = {
114
+ var C = {
114
115
  port: parseInt(process.env.PORT || '8080', 10),
115
116
  host: process.env.HOST || 'localhost',
116
117
  apiPrefix: process.env.API_PREFIX || '/',
@@ -122,32 +123,32 @@ var M = {
122
123
  expiresIn: process.env.JWT_EXPIRES_IN || '30d',
123
124
  issuer: process.env.JWT_ISSUER || 'huxyApp',
124
125
  },
125
- f = M;
126
- var U = (r, e) =>
127
- C({...f, ...r}, async (t, s, n, a) => {
126
+ f = C;
127
+ var X = (r, e) =>
128
+ L({...f, ...r}, async (t, s, n, a) => {
128
129
  let o = m(s, t, a);
129
130
  (await e?.(t, s, n, a), o && d(s, t.apiPrefix));
130
131
  }),
131
- de = U,
132
- he = (r, e) =>
133
- L({...f, ...r}, async (t, s, n, a) => {
132
+ he = X,
133
+ me = (r, e) =>
134
+ U({...f, ...r}, async (t, s, n, a) => {
134
135
  let o = m(s, t, a);
135
136
  (await e?.(t, s, n, a), d(s, t.apiPrefix), o && d(s, t.apiPrefix));
136
137
  });
137
138
  export {
138
139
  m as appProxy,
139
- ie as checkPort,
140
- re as createLogger,
141
- se as dateTime,
142
- de as default,
143
- pe as getDirName,
144
- ne as getEnvConfig,
145
- oe as localIPs,
146
- te as logger,
147
- ae as nodeArgs,
148
- ce as resolvePath,
149
- U as startApp,
150
- C as startServer,
151
- L as startStatic,
152
- he as startStaticApp,
140
+ pe as checkPort,
141
+ se as createLogger,
142
+ oe as dateTime,
143
+ he as default,
144
+ ce as getDirName,
145
+ ie as getEnvConfig,
146
+ ae as localIPs,
147
+ re as logger,
148
+ ne as nodeArgs,
149
+ ue as resolvePath,
150
+ X as startApp,
151
+ L as startServer,
152
+ U as startStatic,
153
+ me as startStaticApp,
153
154
  };