@jayfong/x-server 2.118.1 → 3.0.0
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/lib/_virtual/_rolldown/runtime.mjs +4 -0
- package/lib/cli/api_generator.d.mts +74 -0
- package/lib/cli/api_generator.mjs +310 -0
- package/lib/cli/build_util.d.mts +17 -0
- package/lib/cli/build_util.mjs +156 -0
- package/lib/cli/cli.d.mts +1 -0
- package/lib/cli/cli.mjs +355 -0
- package/lib/cli/css_register.d.mts +1 -0
- package/lib/cli/css_register.mjs +7 -0
- package/lib/cli/deploy_util.d.mts +23 -0
- package/lib/cli/deploy_util.mjs +70 -0
- package/lib/cli/dev_util.d.mts +7 -0
- package/lib/cli/dev_util.mjs +25 -0
- package/lib/cli/env_util.d.mts +45 -0
- package/lib/cli/env_util.mjs +207 -0
- package/lib/cli/esbuild_register.d.mts +1 -0
- package/lib/cli/esbuild_register.mjs +7 -0
- package/lib/cli/template_util.d.mts +18 -0
- package/lib/cli/template_util.mjs +85 -0
- package/lib/cli/templates/crons.ts +1 -1
- package/lib/cli/templates/handlers.ts +1 -1
- package/lib/cli/templates/hooks.ts +1 -1
- package/lib/cli/templates/models.ts +7 -7
- package/lib/cli/templates/package.json +11 -1
- package/lib/cli/templates/routes.ts +2 -1
- package/lib/core/ctx_storage.d.mts +3 -0
- package/lib/core/ctx_storage.mjs +4 -0
- package/lib/core/define_bus.d.mts +37 -0
- package/lib/core/define_bus.mjs +12 -0
- package/lib/core/{define_cron.d.ts → define_cron.d.mts} +2 -2
- package/lib/core/define_cron.mjs +11 -0
- package/lib/core/{define_handler.d.ts → define_handler.d.mts} +19 -19
- package/lib/core/define_handler.mjs +44 -0
- package/lib/core/define_hook.d.mts +2 -0
- package/lib/core/define_hook.mjs +6 -0
- package/lib/core/define_server.d.mts +3 -0
- package/lib/core/define_server.mjs +8 -0
- package/lib/core/{define_task.d.ts → define_task.d.mts} +2 -2
- package/lib/core/define_task.mjs +102 -0
- package/lib/core/get_handler_url.d.mts +2 -0
- package/lib/core/get_handler_url.mjs +7 -0
- package/lib/core/handler.d.mts +16 -0
- package/lib/core/handler.mjs +132 -0
- package/lib/core/http_error.d.mts +2 -0
- package/lib/core/http_error.mjs +1 -0
- package/lib/core/http_header.d.mts +856 -0
- package/lib/core/http_header.mjs +860 -0
- package/lib/core/http_method.d.mts +3 -0
- package/lib/core/http_method.mjs +10 -0
- package/lib/core/http_redirect.d.mts +5 -0
- package/lib/core/http_redirect.mjs +10 -0
- package/lib/core/server.d.mts +20 -0
- package/lib/core/server.mjs +186 -0
- package/lib/core/types.d.mts +256 -0
- package/lib/exports.d.mts +46 -0
- package/lib/exports.mjs +46 -0
- package/lib/index.d.mts +48 -0
- package/lib/index.mjs +45 -0
- package/lib/plugins/base.d.mts +4 -0
- package/lib/plugins/compress.d.mts +12 -0
- package/lib/plugins/compress.mjs +15 -0
- package/lib/plugins/cookie.d.mts +12 -0
- package/lib/plugins/cookie.mjs +15 -0
- package/lib/plugins/cors.d.mts +22 -0
- package/lib/plugins/cors.mjs +34 -0
- package/lib/plugins/file_parser.d.mts +15 -0
- package/lib/plugins/file_parser.mjs +24 -0
- package/lib/plugins/form_body_parser.d.mts +12 -0
- package/lib/plugins/form_body_parser.mjs +15 -0
- package/lib/plugins/ws_parser.d.mts +12 -0
- package/lib/plugins/ws_parser.mjs +15 -0
- package/lib/plugins/xml_parser.d.mts +19 -0
- package/lib/plugins/xml_parser.mjs +40 -0
- package/lib/services/ai.d.mts +31 -0
- package/lib/services/ai.mjs +44 -0
- package/lib/services/base.d.mts +4 -0
- package/lib/services/base.mjs +1 -0
- package/lib/services/cache.d.mts +165 -0
- package/lib/services/cache.mjs +323 -0
- package/lib/services/captcha.d.mts +65 -0
- package/lib/services/captcha.mjs +61 -0
- package/lib/services/{crypto.js → crypto.d.mts} +19 -78
- package/lib/services/crypto.mjs +141 -0
- package/lib/services/db_value.d.mts +60 -0
- package/lib/services/db_value.mjs +64 -0
- package/lib/services/dingtalk.d.mts +39 -0
- package/lib/services/dingtalk.mjs +44 -0
- package/lib/services/dispose.d.mts +17 -0
- package/lib/services/dispose.mjs +18 -0
- package/lib/services/emoji.d.mts +10 -0
- package/lib/services/emoji.mjs +2025 -0
- package/lib/services/file_store.d.mts +49 -0
- package/lib/services/file_store.mjs +58 -0
- package/lib/services/html.d.mts +11 -0
- package/lib/services/html.mjs +12 -0
- package/lib/services/jwt.d.mts +33 -0
- package/lib/services/jwt.mjs +42 -0
- package/lib/services/log.d.mts +37 -0
- package/lib/services/log.mjs +99 -0
- package/lib/services/mail.d.mts +22 -0
- package/lib/services/mail.mjs +28 -0
- package/lib/services/pay.d.mts +123 -0
- package/lib/services/pay.mjs +157 -0
- package/lib/services/random.d.mts +27 -0
- package/lib/services/random.mjs +42 -0
- package/lib/services/rate_limit.d.mts +37 -0
- package/lib/services/rate_limit.mjs +40 -0
- package/lib/services/redis.d.mts +11 -0
- package/lib/services/redis.mjs +6 -0
- package/lib/services/sensitive_words.d.mts +29 -0
- package/lib/services/sensitive_words.mjs +37 -0
- package/lib/services/sms.d.mts +40 -0
- package/lib/services/sms.mjs +30238 -0
- package/lib/types/dto.d.mts +30 -0
- package/lib/types/dto.mjs +1 -0
- package/lib/x.d.mts +11 -0
- package/lib/x.mjs +21 -0
- package/lib/x_init.d.mts +1 -0
- package/lib/x_init.mjs +10 -0
- package/package.json +99 -43
- package/lib/_cjs/cli/api_generator.js +0 -438
- package/lib/_cjs/cli/build_util.js +0 -243
- package/lib/_cjs/cli/cli.js +0 -378
- package/lib/_cjs/cli/css_register.js +0 -7
- package/lib/_cjs/cli/deploy_util.js +0 -76
- package/lib/_cjs/cli/dev_util.js +0 -25
- package/lib/_cjs/cli/env_util.js +0 -252
- package/lib/_cjs/cli/esbuild_register.js +0 -7
- package/lib/_cjs/cli/template_util.js +0 -101
- package/lib/_cjs/cli/templates/crons.ts +0 -2
- package/lib/_cjs/cli/templates/handlers.ts +0 -3
- package/lib/_cjs/cli/templates/hooks.ts +0 -2
- package/lib/_cjs/cli/templates/models.ts +0 -123
- package/lib/_cjs/cli/templates/package.json +0 -3
- package/lib/_cjs/cli/templates/routes.ts +0 -68
- package/lib/_cjs/core/ctx_storage.js +0 -6
- package/lib/_cjs/core/define_bus.js +0 -31
- package/lib/_cjs/core/define_cron.js +0 -13
- package/lib/_cjs/core/define_handler.js +0 -56
- package/lib/_cjs/core/define_hook.js +0 -8
- package/lib/_cjs/core/define_server.js +0 -10
- package/lib/_cjs/core/define_task.js +0 -113
- package/lib/_cjs/core/get_handler_url.js +0 -11
- package/lib/_cjs/core/handler.js +0 -216
- package/lib/_cjs/core/http_error.js +0 -6
- package/lib/_cjs/core/http_header.js +0 -142
- package/lib/_cjs/core/http_method.js +0 -12
- package/lib/_cjs/core/http_redirect.js +0 -11
- package/lib/_cjs/core/server.js +0 -221
- package/lib/_cjs/core/types.js +0 -8
- package/lib/_cjs/exports.js +0 -273
- package/lib/_cjs/index.js +0 -15
- package/lib/_cjs/plugins/base.js +0 -3
- package/lib/_cjs/plugins/compress.js +0 -18
- package/lib/_cjs/plugins/cookie.js +0 -18
- package/lib/_cjs/plugins/cors.js +0 -38
- package/lib/_cjs/plugins/file_parser.js +0 -28
- package/lib/_cjs/plugins/form_body_parser.js +0 -18
- package/lib/_cjs/plugins/ws_parser.js +0 -18
- package/lib/_cjs/plugins/xml_parser.js +0 -48
- package/lib/_cjs/services/ai.js +0 -48
- package/lib/_cjs/services/base.js +0 -3
- package/lib/_cjs/services/cache.js +0 -400
- package/lib/_cjs/services/captcha.js +0 -78
- package/lib/_cjs/services/crypto.js +0 -175
- package/lib/_cjs/services/db_value.js +0 -77
- package/lib/_cjs/services/dingtalk.js +0 -51
- package/lib/_cjs/services/dispose.js +0 -23
- package/lib/_cjs/services/emoji.js +0 -2034
- package/lib/_cjs/services/file_store.js +0 -67
- package/lib/_cjs/services/html.js +0 -17
- package/lib/_cjs/services/jwt.js +0 -65
- package/lib/_cjs/services/log.js +0 -108
- package/lib/_cjs/services/mail.js +0 -31
- package/lib/_cjs/services/pay.js +0 -191
- package/lib/_cjs/services/random.js +0 -51
- package/lib/_cjs/services/rate_limit.js +0 -54
- package/lib/_cjs/services/redis.js +0 -12
- package/lib/_cjs/services/sensitive_words.js +0 -62
- package/lib/_cjs/services/sms.js +0 -84
- package/lib/_cjs/types/dto.js +0 -3
- package/lib/_cjs/x.js +0 -35
- package/lib/cli/api_generator.d.ts +0 -74
- package/lib/cli/api_generator.js +0 -432
- package/lib/cli/build_util.d.ts +0 -17
- package/lib/cli/build_util.js +0 -236
- package/lib/cli/cli.d.ts +0 -2
- package/lib/cli/cli.js +0 -374
- package/lib/cli/css_register.js +0 -5
- package/lib/cli/deploy_util.d.ts +0 -23
- package/lib/cli/deploy_util.js +0 -70
- package/lib/cli/dev_util.d.ts +0 -8
- package/lib/cli/dev_util.js +0 -19
- package/lib/cli/env_util.d.ts +0 -45
- package/lib/cli/env_util.js +0 -246
- package/lib/cli/esbuild_register.js +0 -5
- package/lib/cli/template_util.d.ts +0 -18
- package/lib/cli/template_util.js +0 -95
- package/lib/core/ctx_storage.d.ts +0 -3
- package/lib/core/ctx_storage.js +0 -2
- package/lib/core/define_bus.d.ts +0 -37
- package/lib/core/define_bus.js +0 -27
- package/lib/core/define_cron.js +0 -9
- package/lib/core/define_handler.js +0 -48
- package/lib/core/define_hook.d.ts +0 -2
- package/lib/core/define_hook.js +0 -4
- package/lib/core/define_server.d.ts +0 -3
- package/lib/core/define_server.js +0 -6
- package/lib/core/define_task.js +0 -107
- package/lib/core/get_handler_url.d.ts +0 -2
- package/lib/core/get_handler_url.js +0 -7
- package/lib/core/handler.d.ts +0 -16
- package/lib/core/handler.js +0 -209
- package/lib/core/http_error.d.ts +0 -2
- package/lib/core/http_error.js +0 -2
- package/lib/core/http_header.d.ts +0 -856
- package/lib/core/http_header.js +0 -139
- package/lib/core/http_method.d.ts +0 -3
- package/lib/core/http_method.js +0 -8
- package/lib/core/http_redirect.d.ts +0 -5
- package/lib/core/http_redirect.js +0 -6
- package/lib/core/server.d.ts +0 -20
- package/lib/core/server.js +0 -215
- package/lib/core/types.d.ts +0 -265
- package/lib/core/types.js +0 -4
- package/lib/exports.d.ts +0 -45
- package/lib/exports.js +0 -47
- package/lib/index.d.ts +0 -2
- package/lib/index.js +0 -3
- package/lib/plugins/base.d.ts +0 -4
- package/lib/plugins/base.js +0 -1
- package/lib/plugins/compress.d.ts +0 -13
- package/lib/plugins/compress.js +0 -12
- package/lib/plugins/cookie.d.ts +0 -13
- package/lib/plugins/cookie.js +0 -12
- package/lib/plugins/cors.d.ts +0 -22
- package/lib/plugins/cors.js +0 -33
- package/lib/plugins/file_parser.d.ts +0 -16
- package/lib/plugins/file_parser.js +0 -22
- package/lib/plugins/form_body_parser.d.ts +0 -13
- package/lib/plugins/form_body_parser.js +0 -12
- package/lib/plugins/ws_parser.d.ts +0 -13
- package/lib/plugins/ws_parser.js +0 -12
- package/lib/plugins/xml_parser.d.ts +0 -19
- package/lib/plugins/xml_parser.js +0 -43
- package/lib/services/ai.d.ts +0 -31
- package/lib/services/ai.js +0 -43
- package/lib/services/base.d.ts +0 -4
- package/lib/services/base.js +0 -1
- package/lib/services/cache.d.ts +0 -173
- package/lib/services/cache.js +0 -394
- package/lib/services/captcha.d.ts +0 -65
- package/lib/services/captcha.js +0 -72
- package/lib/services/crypto.d.ts +0 -110
- package/lib/services/db_value.d.ts +0 -60
- package/lib/services/db_value.js +0 -72
- package/lib/services/dingtalk.d.ts +0 -39
- package/lib/services/dingtalk.js +0 -45
- package/lib/services/dispose.d.ts +0 -17
- package/lib/services/dispose.js +0 -17
- package/lib/services/emoji.d.ts +0 -10
- package/lib/services/emoji.js +0 -2029
- package/lib/services/file_store.d.ts +0 -49
- package/lib/services/file_store.js +0 -61
- package/lib/services/html.d.ts +0 -11
- package/lib/services/html.js +0 -12
- package/lib/services/jwt.d.ts +0 -34
- package/lib/services/jwt.js +0 -59
- package/lib/services/log.d.ts +0 -37
- package/lib/services/log.js +0 -102
- package/lib/services/mail.d.ts +0 -23
- package/lib/services/mail.js +0 -25
- package/lib/services/pay.d.ts +0 -123
- package/lib/services/pay.js +0 -185
- package/lib/services/random.d.ts +0 -27
- package/lib/services/random.js +0 -45
- package/lib/services/rate_limit.d.ts +0 -37
- package/lib/services/rate_limit.js +0 -49
- package/lib/services/redis.d.ts +0 -12
- package/lib/services/redis.js +0 -7
- package/lib/services/sensitive_words.d.ts +0 -30
- package/lib/services/sensitive_words.js +0 -57
- package/lib/services/sms.d.ts +0 -40
- package/lib/services/sms.js +0 -78
- package/lib/types/dto.d.ts +0 -86
- package/lib/types/dto.js +0 -1
- package/lib/x.d.ts +0 -17
- package/lib/x.js +0 -30
- /package/lib/{cli/css_register.d.ts → core/types.mjs} +0 -0
- /package/lib/{cli/esbuild_register.d.ts → plugins/base.mjs} +0 -0
package/lib/_cjs/core/server.js
DELETED
|
@@ -1,221 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
|
|
4
|
-
exports.__esModule = true;
|
|
5
|
-
exports.Server = void 0;
|
|
6
|
-
var _nodeProcess = _interopRequireDefault(require("node:process"));
|
|
7
|
-
var _fastify = _interopRequireDefault(require("fastify"));
|
|
8
|
-
var _vtils = require("vtils");
|
|
9
|
-
var _x = require("vtils/x");
|
|
10
|
-
var _x2 = require("../x");
|
|
11
|
-
var _http_error = require("./http_error");
|
|
12
|
-
var _http_method = require("./http_method");
|
|
13
|
-
class Server {
|
|
14
|
-
constructor(options) {
|
|
15
|
-
this.options = options;
|
|
16
|
-
this.fastify = void 0;
|
|
17
|
-
this.routes = [];
|
|
18
|
-
Server.options = options;
|
|
19
|
-
_nodeProcess.default.on('unhandledRejection', (reason, promise) => {
|
|
20
|
-
console.error('未捕获的错误', reason, promise);
|
|
21
|
-
});
|
|
22
|
-
}
|
|
23
|
-
async start() {
|
|
24
|
-
this.applyServices();
|
|
25
|
-
await this.prepareFastify();
|
|
26
|
-
this.applyPlugins();
|
|
27
|
-
await this.prepareRoutes();
|
|
28
|
-
await this.applyRoutes();
|
|
29
|
-
await this.applyHooks();
|
|
30
|
-
await this.startFastify();
|
|
31
|
-
await this.startCrons();
|
|
32
|
-
await this.applyAutoClose();
|
|
33
|
-
}
|
|
34
|
-
async close() {
|
|
35
|
-
await this.fastify?.close();
|
|
36
|
-
}
|
|
37
|
-
async prepareFastify() {
|
|
38
|
-
this.fastify = await (0, _fastify.default)({
|
|
39
|
-
logger: _nodeProcess.default.env.NODE_ENV === 'development' ? {
|
|
40
|
-
transport: {
|
|
41
|
-
target: 'pino-pretty'
|
|
42
|
-
}
|
|
43
|
-
} : false,
|
|
44
|
-
// 信任 X-Forwarded-For 头以获取正确的 IP,
|
|
45
|
-
// 否则通过 nginx 代理后 remoteAddr 将始终为 127.0.0.1
|
|
46
|
-
trustProxy: true,
|
|
47
|
-
...this.options.fastifyOptions
|
|
48
|
-
});
|
|
49
|
-
}
|
|
50
|
-
async startFastify() {
|
|
51
|
-
await this.fastify.listen({
|
|
52
|
-
host: this.options.host || '0.0.0.0',
|
|
53
|
-
port: this.options.port
|
|
54
|
-
});
|
|
55
|
-
}
|
|
56
|
-
async prepareRoutes() {
|
|
57
|
-
// @ts-ignore
|
|
58
|
-
const {
|
|
59
|
-
routes
|
|
60
|
-
} = await require('.x/routes');
|
|
61
|
-
this.routes = routes;
|
|
62
|
-
}
|
|
63
|
-
async applyHooks() {
|
|
64
|
-
// @ts-ignore
|
|
65
|
-
await require('.x/hooks');
|
|
66
|
-
}
|
|
67
|
-
applyServices() {
|
|
68
|
-
_x2.x.register(...(this.options.services || []));
|
|
69
|
-
}
|
|
70
|
-
applyPlugins() {
|
|
71
|
-
const plugins = this.options.plugins || [];
|
|
72
|
-
for (const plugin of plugins) {
|
|
73
|
-
plugin.register(this.fastify);
|
|
74
|
-
}
|
|
75
|
-
}
|
|
76
|
-
async applyRoutes() {
|
|
77
|
-
await this.fastify.register(async fastify => {
|
|
78
|
-
const appUrl = _x2.x.env.APP_URL.replace(/\/+$/, '');
|
|
79
|
-
const routeMap = (0, _vtils.keyBy)(this.routes, item => item.path);
|
|
80
|
-
const handleRoute = async (item, req, res, path) => {
|
|
81
|
-
const handlerOptions = item.handler.options;
|
|
82
|
-
const handlerMethod = handlerOptions.requestMethod || 'POST';
|
|
83
|
-
const isWS = handlerMethod === 'WS';
|
|
84
|
-
const url = `${appUrl}${
|
|
85
|
-
// 结构:/test/sss?x=2
|
|
86
|
-
path ?? (isWS ? res.url : req.url)}`;
|
|
87
|
-
if (isWS) {
|
|
88
|
-
await item.handler.handle(undefined, {
|
|
89
|
-
traceId: (0, _x.cuid2)(),
|
|
90
|
-
url: url,
|
|
91
|
-
headers: res.headers,
|
|
92
|
-
setHeader: _vtils.noop,
|
|
93
|
-
redirect: _vtils.noop,
|
|
94
|
-
ws: req,
|
|
95
|
-
req: res,
|
|
96
|
-
res: {}
|
|
97
|
-
});
|
|
98
|
-
return;
|
|
99
|
-
}
|
|
100
|
-
let files = {};
|
|
101
|
-
if (handlerMethod === 'FILE') {
|
|
102
|
-
const part = await req.file();
|
|
103
|
-
files = Object.keys(part.fields).reduce((res, name) => {
|
|
104
|
-
res[name] = (0, _vtils.castArray)(part.fields[name]).map(item => item.file ? item : item.value)[0];
|
|
105
|
-
return res;
|
|
106
|
-
}, {});
|
|
107
|
-
}
|
|
108
|
-
const data = await item.handler.handle(handlerMethod === 'ANY' ? {} : {
|
|
109
|
-
// @ts-ignore
|
|
110
|
-
...req.params,
|
|
111
|
-
// @ts-ignore
|
|
112
|
-
...req.query,
|
|
113
|
-
// @ts-ignore
|
|
114
|
-
...req.body,
|
|
115
|
-
...files
|
|
116
|
-
}, {
|
|
117
|
-
traceId: (0, _x.cuid2)(),
|
|
118
|
-
url,
|
|
119
|
-
headers: req.headers,
|
|
120
|
-
setHeader: (k, v) => res.header(k, v),
|
|
121
|
-
redirect: (url, permanently) => res.redirect(permanently ? 301 : 302, url),
|
|
122
|
-
ws: undefined,
|
|
123
|
-
req: req,
|
|
124
|
-
res: res
|
|
125
|
-
});
|
|
126
|
-
return data;
|
|
127
|
-
};
|
|
128
|
-
for (const item of this.routes) {
|
|
129
|
-
const handlerOptions = item.handler.options;
|
|
130
|
-
const handlerMethod = handlerOptions.requestMethod || 'POST';
|
|
131
|
-
const isWS = handlerMethod === 'WS';
|
|
132
|
-
const serverMethod = isWS ? 'GET' : _http_method.HandlerMethodToHttpMethod[handlerMethod];
|
|
133
|
-
fastify.route({
|
|
134
|
-
method: handlerMethod === 'ANY' ? ['GET', 'HEAD', 'TRACE', 'DELETE', 'OPTIONS', 'PATCH', 'PUT', 'POST'] : serverMethod,
|
|
135
|
-
url: item.path,
|
|
136
|
-
constraints: handlerOptions.requestHost ? {
|
|
137
|
-
host: handlerOptions.requestHost
|
|
138
|
-
} : undefined,
|
|
139
|
-
websocket: isWS,
|
|
140
|
-
handler: (req, res) => handleRoute(item, req, res)
|
|
141
|
-
});
|
|
142
|
-
}
|
|
143
|
-
|
|
144
|
-
// 静态文件服务
|
|
145
|
-
this.applyStatic();
|
|
146
|
-
|
|
147
|
-
// 接口统一入口
|
|
148
|
-
fastify.route({
|
|
149
|
-
method: 'POST',
|
|
150
|
-
url: '/@',
|
|
151
|
-
handler: async (req, res) => {
|
|
152
|
-
let requestPath = req.headers['x-path'] || '';
|
|
153
|
-
if (!requestPath.startsWith('/')) {
|
|
154
|
-
const [_requestPath, _time] = (0, _vtils.base64UrlDecode)((0, _vtils.rot13)(requestPath)).split('#');
|
|
155
|
-
if (!_time || Date.now() / 1000 - Number(_time) > 5 * 60) {
|
|
156
|
-
throw new _http_error.HttpError.Forbidden();
|
|
157
|
-
}
|
|
158
|
-
requestPath = _requestPath;
|
|
159
|
-
}
|
|
160
|
-
if (!requestPath || !routeMap[requestPath]) {
|
|
161
|
-
throw new _http_error.HttpError.NotFound();
|
|
162
|
-
}
|
|
163
|
-
return handleRoute(routeMap[requestPath], req, res, requestPath);
|
|
164
|
-
}
|
|
165
|
-
});
|
|
166
|
-
|
|
167
|
-
// 开发管理入口
|
|
168
|
-
fastify.route({
|
|
169
|
-
method: 'POST',
|
|
170
|
-
url: '/$',
|
|
171
|
-
handler: async req => {
|
|
172
|
-
const payload = req.body;
|
|
173
|
-
if (payload && typeof payload === 'object' && _x2.x.env.APP_TOKEN && payload.token === _x2.x.env.APP_TOKEN) {
|
|
174
|
-
if (payload.type === 'ping') {
|
|
175
|
-
return 'ping:success';
|
|
176
|
-
} else if (payload.type === 'updateEnv') {
|
|
177
|
-
Object.assign(_x2.x.env, payload.data);
|
|
178
|
-
|
|
179
|
-
// 更新静态文件服务
|
|
180
|
-
this.applyStatic();
|
|
181
|
-
}
|
|
182
|
-
}
|
|
183
|
-
}
|
|
184
|
-
});
|
|
185
|
-
});
|
|
186
|
-
}
|
|
187
|
-
async applyStatic() {
|
|
188
|
-
if (Array.isArray(_x2.x.env.APP_STATIC_CONTENT)) {
|
|
189
|
-
const staticContent = _x2.x.env.APP_STATIC_CONTENT;
|
|
190
|
-
for (const item of staticContent) {
|
|
191
|
-
if (!item.method) {
|
|
192
|
-
item.method = 'GET';
|
|
193
|
-
}
|
|
194
|
-
if (!this.fastify.hasRoute({
|
|
195
|
-
method: item.method,
|
|
196
|
-
url: item.path
|
|
197
|
-
})) {
|
|
198
|
-
this.fastify.route({
|
|
199
|
-
method: item.method,
|
|
200
|
-
url: item.path,
|
|
201
|
-
handler: async (_req, res) => {
|
|
202
|
-
if (!item.contentType && typeof item.content === 'string') {
|
|
203
|
-
res.header('Content-Type', 'plain/text');
|
|
204
|
-
}
|
|
205
|
-
return item.content;
|
|
206
|
-
}
|
|
207
|
-
});
|
|
208
|
-
}
|
|
209
|
-
}
|
|
210
|
-
}
|
|
211
|
-
}
|
|
212
|
-
async startCrons() {
|
|
213
|
-
// @ts-ignore
|
|
214
|
-
await require('.x/crons');
|
|
215
|
-
}
|
|
216
|
-
async applyAutoClose() {
|
|
217
|
-
_x2.x.dispose.add(() => this.close());
|
|
218
|
-
}
|
|
219
|
-
}
|
|
220
|
-
exports.Server = Server;
|
|
221
|
-
Server.options = {};
|
package/lib/_cjs/core/types.js
DELETED
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
exports.__esModule = true;
|
|
4
|
-
exports.XTask = exports.XServer = exports.XHandler = exports.XCron = void 0;
|
|
5
|
-
let XServer = exports.XServer = void 0;
|
|
6
|
-
let XHandler = exports.XHandler = void 0;
|
|
7
|
-
let XTask = exports.XTask = void 0;
|
|
8
|
-
let XCron = exports.XCron = void 0;
|
package/lib/_cjs/exports.js
DELETED
|
@@ -1,273 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
exports.__esModule = true;
|
|
4
|
-
var _ctx_storage = require("./core/ctx_storage");
|
|
5
|
-
Object.keys(_ctx_storage).forEach(function (key) {
|
|
6
|
-
if (key === "default" || key === "__esModule") return;
|
|
7
|
-
if (key in exports && exports[key] === _ctx_storage[key]) return;
|
|
8
|
-
exports[key] = _ctx_storage[key];
|
|
9
|
-
});
|
|
10
|
-
var _define_bus = require("./core/define_bus");
|
|
11
|
-
Object.keys(_define_bus).forEach(function (key) {
|
|
12
|
-
if (key === "default" || key === "__esModule") return;
|
|
13
|
-
if (key in exports && exports[key] === _define_bus[key]) return;
|
|
14
|
-
exports[key] = _define_bus[key];
|
|
15
|
-
});
|
|
16
|
-
var _define_cron = require("./core/define_cron");
|
|
17
|
-
Object.keys(_define_cron).forEach(function (key) {
|
|
18
|
-
if (key === "default" || key === "__esModule") return;
|
|
19
|
-
if (key in exports && exports[key] === _define_cron[key]) return;
|
|
20
|
-
exports[key] = _define_cron[key];
|
|
21
|
-
});
|
|
22
|
-
var _define_handler = require("./core/define_handler");
|
|
23
|
-
Object.keys(_define_handler).forEach(function (key) {
|
|
24
|
-
if (key === "default" || key === "__esModule") return;
|
|
25
|
-
if (key in exports && exports[key] === _define_handler[key]) return;
|
|
26
|
-
exports[key] = _define_handler[key];
|
|
27
|
-
});
|
|
28
|
-
var _define_hook = require("./core/define_hook");
|
|
29
|
-
Object.keys(_define_hook).forEach(function (key) {
|
|
30
|
-
if (key === "default" || key === "__esModule") return;
|
|
31
|
-
if (key in exports && exports[key] === _define_hook[key]) return;
|
|
32
|
-
exports[key] = _define_hook[key];
|
|
33
|
-
});
|
|
34
|
-
var _define_server = require("./core/define_server");
|
|
35
|
-
Object.keys(_define_server).forEach(function (key) {
|
|
36
|
-
if (key === "default" || key === "__esModule") return;
|
|
37
|
-
if (key in exports && exports[key] === _define_server[key]) return;
|
|
38
|
-
exports[key] = _define_server[key];
|
|
39
|
-
});
|
|
40
|
-
var _define_task = require("./core/define_task");
|
|
41
|
-
Object.keys(_define_task).forEach(function (key) {
|
|
42
|
-
if (key === "default" || key === "__esModule") return;
|
|
43
|
-
if (key in exports && exports[key] === _define_task[key]) return;
|
|
44
|
-
exports[key] = _define_task[key];
|
|
45
|
-
});
|
|
46
|
-
var _get_handler_url = require("./core/get_handler_url");
|
|
47
|
-
Object.keys(_get_handler_url).forEach(function (key) {
|
|
48
|
-
if (key === "default" || key === "__esModule") return;
|
|
49
|
-
if (key in exports && exports[key] === _get_handler_url[key]) return;
|
|
50
|
-
exports[key] = _get_handler_url[key];
|
|
51
|
-
});
|
|
52
|
-
var _handler = require("./core/handler");
|
|
53
|
-
Object.keys(_handler).forEach(function (key) {
|
|
54
|
-
if (key === "default" || key === "__esModule") return;
|
|
55
|
-
if (key in exports && exports[key] === _handler[key]) return;
|
|
56
|
-
exports[key] = _handler[key];
|
|
57
|
-
});
|
|
58
|
-
var _http_error = require("./core/http_error");
|
|
59
|
-
Object.keys(_http_error).forEach(function (key) {
|
|
60
|
-
if (key === "default" || key === "__esModule") return;
|
|
61
|
-
if (key in exports && exports[key] === _http_error[key]) return;
|
|
62
|
-
exports[key] = _http_error[key];
|
|
63
|
-
});
|
|
64
|
-
var _http_header = require("./core/http_header");
|
|
65
|
-
Object.keys(_http_header).forEach(function (key) {
|
|
66
|
-
if (key === "default" || key === "__esModule") return;
|
|
67
|
-
if (key in exports && exports[key] === _http_header[key]) return;
|
|
68
|
-
exports[key] = _http_header[key];
|
|
69
|
-
});
|
|
70
|
-
var _http_method = require("./core/http_method");
|
|
71
|
-
Object.keys(_http_method).forEach(function (key) {
|
|
72
|
-
if (key === "default" || key === "__esModule") return;
|
|
73
|
-
if (key in exports && exports[key] === _http_method[key]) return;
|
|
74
|
-
exports[key] = _http_method[key];
|
|
75
|
-
});
|
|
76
|
-
var _http_redirect = require("./core/http_redirect");
|
|
77
|
-
Object.keys(_http_redirect).forEach(function (key) {
|
|
78
|
-
if (key === "default" || key === "__esModule") return;
|
|
79
|
-
if (key in exports && exports[key] === _http_redirect[key]) return;
|
|
80
|
-
exports[key] = _http_redirect[key];
|
|
81
|
-
});
|
|
82
|
-
var _server = require("./core/server");
|
|
83
|
-
Object.keys(_server).forEach(function (key) {
|
|
84
|
-
if (key === "default" || key === "__esModule") return;
|
|
85
|
-
if (key in exports && exports[key] === _server[key]) return;
|
|
86
|
-
exports[key] = _server[key];
|
|
87
|
-
});
|
|
88
|
-
var _types = require("./core/types");
|
|
89
|
-
Object.keys(_types).forEach(function (key) {
|
|
90
|
-
if (key === "default" || key === "__esModule") return;
|
|
91
|
-
if (key in exports && exports[key] === _types[key]) return;
|
|
92
|
-
exports[key] = _types[key];
|
|
93
|
-
});
|
|
94
|
-
var _base = require("./plugins/base");
|
|
95
|
-
Object.keys(_base).forEach(function (key) {
|
|
96
|
-
if (key === "default" || key === "__esModule") return;
|
|
97
|
-
if (key in exports && exports[key] === _base[key]) return;
|
|
98
|
-
exports[key] = _base[key];
|
|
99
|
-
});
|
|
100
|
-
var _compress = require("./plugins/compress");
|
|
101
|
-
Object.keys(_compress).forEach(function (key) {
|
|
102
|
-
if (key === "default" || key === "__esModule") return;
|
|
103
|
-
if (key in exports && exports[key] === _compress[key]) return;
|
|
104
|
-
exports[key] = _compress[key];
|
|
105
|
-
});
|
|
106
|
-
var _cookie = require("./plugins/cookie");
|
|
107
|
-
Object.keys(_cookie).forEach(function (key) {
|
|
108
|
-
if (key === "default" || key === "__esModule") return;
|
|
109
|
-
if (key in exports && exports[key] === _cookie[key]) return;
|
|
110
|
-
exports[key] = _cookie[key];
|
|
111
|
-
});
|
|
112
|
-
var _cors = require("./plugins/cors");
|
|
113
|
-
Object.keys(_cors).forEach(function (key) {
|
|
114
|
-
if (key === "default" || key === "__esModule") return;
|
|
115
|
-
if (key in exports && exports[key] === _cors[key]) return;
|
|
116
|
-
exports[key] = _cors[key];
|
|
117
|
-
});
|
|
118
|
-
var _file_parser = require("./plugins/file_parser");
|
|
119
|
-
Object.keys(_file_parser).forEach(function (key) {
|
|
120
|
-
if (key === "default" || key === "__esModule") return;
|
|
121
|
-
if (key in exports && exports[key] === _file_parser[key]) return;
|
|
122
|
-
exports[key] = _file_parser[key];
|
|
123
|
-
});
|
|
124
|
-
var _form_body_parser = require("./plugins/form_body_parser");
|
|
125
|
-
Object.keys(_form_body_parser).forEach(function (key) {
|
|
126
|
-
if (key === "default" || key === "__esModule") return;
|
|
127
|
-
if (key in exports && exports[key] === _form_body_parser[key]) return;
|
|
128
|
-
exports[key] = _form_body_parser[key];
|
|
129
|
-
});
|
|
130
|
-
var _ws_parser = require("./plugins/ws_parser");
|
|
131
|
-
Object.keys(_ws_parser).forEach(function (key) {
|
|
132
|
-
if (key === "default" || key === "__esModule") return;
|
|
133
|
-
if (key in exports && exports[key] === _ws_parser[key]) return;
|
|
134
|
-
exports[key] = _ws_parser[key];
|
|
135
|
-
});
|
|
136
|
-
var _xml_parser = require("./plugins/xml_parser");
|
|
137
|
-
Object.keys(_xml_parser).forEach(function (key) {
|
|
138
|
-
if (key === "default" || key === "__esModule") return;
|
|
139
|
-
if (key in exports && exports[key] === _xml_parser[key]) return;
|
|
140
|
-
exports[key] = _xml_parser[key];
|
|
141
|
-
});
|
|
142
|
-
var _ai = require("./services/ai");
|
|
143
|
-
Object.keys(_ai).forEach(function (key) {
|
|
144
|
-
if (key === "default" || key === "__esModule") return;
|
|
145
|
-
if (key in exports && exports[key] === _ai[key]) return;
|
|
146
|
-
exports[key] = _ai[key];
|
|
147
|
-
});
|
|
148
|
-
var _base2 = require("./services/base");
|
|
149
|
-
Object.keys(_base2).forEach(function (key) {
|
|
150
|
-
if (key === "default" || key === "__esModule") return;
|
|
151
|
-
if (key in exports && exports[key] === _base2[key]) return;
|
|
152
|
-
exports[key] = _base2[key];
|
|
153
|
-
});
|
|
154
|
-
var _cache = require("./services/cache");
|
|
155
|
-
Object.keys(_cache).forEach(function (key) {
|
|
156
|
-
if (key === "default" || key === "__esModule") return;
|
|
157
|
-
if (key in exports && exports[key] === _cache[key]) return;
|
|
158
|
-
exports[key] = _cache[key];
|
|
159
|
-
});
|
|
160
|
-
var _captcha = require("./services/captcha");
|
|
161
|
-
Object.keys(_captcha).forEach(function (key) {
|
|
162
|
-
if (key === "default" || key === "__esModule") return;
|
|
163
|
-
if (key in exports && exports[key] === _captcha[key]) return;
|
|
164
|
-
exports[key] = _captcha[key];
|
|
165
|
-
});
|
|
166
|
-
var _crypto = require("./services/crypto");
|
|
167
|
-
Object.keys(_crypto).forEach(function (key) {
|
|
168
|
-
if (key === "default" || key === "__esModule") return;
|
|
169
|
-
if (key in exports && exports[key] === _crypto[key]) return;
|
|
170
|
-
exports[key] = _crypto[key];
|
|
171
|
-
});
|
|
172
|
-
var _db_value = require("./services/db_value");
|
|
173
|
-
Object.keys(_db_value).forEach(function (key) {
|
|
174
|
-
if (key === "default" || key === "__esModule") return;
|
|
175
|
-
if (key in exports && exports[key] === _db_value[key]) return;
|
|
176
|
-
exports[key] = _db_value[key];
|
|
177
|
-
});
|
|
178
|
-
var _dingtalk = require("./services/dingtalk");
|
|
179
|
-
Object.keys(_dingtalk).forEach(function (key) {
|
|
180
|
-
if (key === "default" || key === "__esModule") return;
|
|
181
|
-
if (key in exports && exports[key] === _dingtalk[key]) return;
|
|
182
|
-
exports[key] = _dingtalk[key];
|
|
183
|
-
});
|
|
184
|
-
var _dispose = require("./services/dispose");
|
|
185
|
-
Object.keys(_dispose).forEach(function (key) {
|
|
186
|
-
if (key === "default" || key === "__esModule") return;
|
|
187
|
-
if (key in exports && exports[key] === _dispose[key]) return;
|
|
188
|
-
exports[key] = _dispose[key];
|
|
189
|
-
});
|
|
190
|
-
var _emoji = require("./services/emoji");
|
|
191
|
-
Object.keys(_emoji).forEach(function (key) {
|
|
192
|
-
if (key === "default" || key === "__esModule") return;
|
|
193
|
-
if (key in exports && exports[key] === _emoji[key]) return;
|
|
194
|
-
exports[key] = _emoji[key];
|
|
195
|
-
});
|
|
196
|
-
var _file_store = require("./services/file_store");
|
|
197
|
-
Object.keys(_file_store).forEach(function (key) {
|
|
198
|
-
if (key === "default" || key === "__esModule") return;
|
|
199
|
-
if (key in exports && exports[key] === _file_store[key]) return;
|
|
200
|
-
exports[key] = _file_store[key];
|
|
201
|
-
});
|
|
202
|
-
var _html = require("./services/html");
|
|
203
|
-
Object.keys(_html).forEach(function (key) {
|
|
204
|
-
if (key === "default" || key === "__esModule") return;
|
|
205
|
-
if (key in exports && exports[key] === _html[key]) return;
|
|
206
|
-
exports[key] = _html[key];
|
|
207
|
-
});
|
|
208
|
-
var _jwt = require("./services/jwt");
|
|
209
|
-
Object.keys(_jwt).forEach(function (key) {
|
|
210
|
-
if (key === "default" || key === "__esModule") return;
|
|
211
|
-
if (key in exports && exports[key] === _jwt[key]) return;
|
|
212
|
-
exports[key] = _jwt[key];
|
|
213
|
-
});
|
|
214
|
-
var _log = require("./services/log");
|
|
215
|
-
Object.keys(_log).forEach(function (key) {
|
|
216
|
-
if (key === "default" || key === "__esModule") return;
|
|
217
|
-
if (key in exports && exports[key] === _log[key]) return;
|
|
218
|
-
exports[key] = _log[key];
|
|
219
|
-
});
|
|
220
|
-
var _mail = require("./services/mail");
|
|
221
|
-
Object.keys(_mail).forEach(function (key) {
|
|
222
|
-
if (key === "default" || key === "__esModule") return;
|
|
223
|
-
if (key in exports && exports[key] === _mail[key]) return;
|
|
224
|
-
exports[key] = _mail[key];
|
|
225
|
-
});
|
|
226
|
-
var _pay = require("./services/pay");
|
|
227
|
-
Object.keys(_pay).forEach(function (key) {
|
|
228
|
-
if (key === "default" || key === "__esModule") return;
|
|
229
|
-
if (key in exports && exports[key] === _pay[key]) return;
|
|
230
|
-
exports[key] = _pay[key];
|
|
231
|
-
});
|
|
232
|
-
var _random = require("./services/random");
|
|
233
|
-
Object.keys(_random).forEach(function (key) {
|
|
234
|
-
if (key === "default" || key === "__esModule") return;
|
|
235
|
-
if (key in exports && exports[key] === _random[key]) return;
|
|
236
|
-
exports[key] = _random[key];
|
|
237
|
-
});
|
|
238
|
-
var _rate_limit = require("./services/rate_limit");
|
|
239
|
-
Object.keys(_rate_limit).forEach(function (key) {
|
|
240
|
-
if (key === "default" || key === "__esModule") return;
|
|
241
|
-
if (key in exports && exports[key] === _rate_limit[key]) return;
|
|
242
|
-
exports[key] = _rate_limit[key];
|
|
243
|
-
});
|
|
244
|
-
var _redis = require("./services/redis");
|
|
245
|
-
Object.keys(_redis).forEach(function (key) {
|
|
246
|
-
if (key === "default" || key === "__esModule") return;
|
|
247
|
-
if (key in exports && exports[key] === _redis[key]) return;
|
|
248
|
-
exports[key] = _redis[key];
|
|
249
|
-
});
|
|
250
|
-
var _sensitive_words = require("./services/sensitive_words");
|
|
251
|
-
Object.keys(_sensitive_words).forEach(function (key) {
|
|
252
|
-
if (key === "default" || key === "__esModule") return;
|
|
253
|
-
if (key in exports && exports[key] === _sensitive_words[key]) return;
|
|
254
|
-
exports[key] = _sensitive_words[key];
|
|
255
|
-
});
|
|
256
|
-
var _sms = require("./services/sms");
|
|
257
|
-
Object.keys(_sms).forEach(function (key) {
|
|
258
|
-
if (key === "default" || key === "__esModule") return;
|
|
259
|
-
if (key in exports && exports[key] === _sms[key]) return;
|
|
260
|
-
exports[key] = _sms[key];
|
|
261
|
-
});
|
|
262
|
-
var _dto = require("./types/dto");
|
|
263
|
-
Object.keys(_dto).forEach(function (key) {
|
|
264
|
-
if (key === "default" || key === "__esModule") return;
|
|
265
|
-
if (key in exports && exports[key] === _dto[key]) return;
|
|
266
|
-
exports[key] = _dto[key];
|
|
267
|
-
});
|
|
268
|
-
var _x = require("./x");
|
|
269
|
-
Object.keys(_x).forEach(function (key) {
|
|
270
|
-
if (key === "default" || key === "__esModule") return;
|
|
271
|
-
if (key in exports && exports[key] === _x[key]) return;
|
|
272
|
-
exports[key] = _x[key];
|
|
273
|
-
});
|
package/lib/_cjs/index.js
DELETED
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
exports.__esModule = true;
|
|
4
|
-
var _exports = require("./exports");
|
|
5
|
-
Object.keys(_exports).forEach(function (key) {
|
|
6
|
-
if (key === "default" || key === "__esModule") return;
|
|
7
|
-
if (key in exports && exports[key] === _exports[key]) return;
|
|
8
|
-
exports[key] = _exports[key];
|
|
9
|
-
});
|
|
10
|
-
var _models = require(".x/models");
|
|
11
|
-
Object.keys(_models).forEach(function (key) {
|
|
12
|
-
if (key === "default" || key === "__esModule") return;
|
|
13
|
-
if (key in exports && exports[key] === _models[key]) return;
|
|
14
|
-
exports[key] = _models[key];
|
|
15
|
-
});
|
package/lib/_cjs/plugins/base.js
DELETED
|
@@ -1,18 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
|
|
4
|
-
exports.__esModule = true;
|
|
5
|
-
exports.CompressPlugin = void 0;
|
|
6
|
-
var _compress = _interopRequireDefault(require("@fastify/compress"));
|
|
7
|
-
/**
|
|
8
|
-
* 响应压缩插件
|
|
9
|
-
*/
|
|
10
|
-
class CompressPlugin {
|
|
11
|
-
constructor(options) {
|
|
12
|
-
this.options = options;
|
|
13
|
-
}
|
|
14
|
-
register(fastify) {
|
|
15
|
-
fastify.register(_compress.default, this.options);
|
|
16
|
-
}
|
|
17
|
-
}
|
|
18
|
-
exports.CompressPlugin = CompressPlugin;
|
|
@@ -1,18 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
|
|
4
|
-
exports.__esModule = true;
|
|
5
|
-
exports.CookiePlugin = void 0;
|
|
6
|
-
var _cookie = _interopRequireDefault(require("@fastify/cookie"));
|
|
7
|
-
/**
|
|
8
|
-
* Cookie 支持插件
|
|
9
|
-
*/
|
|
10
|
-
class CookiePlugin {
|
|
11
|
-
constructor(options) {
|
|
12
|
-
this.options = options;
|
|
13
|
-
}
|
|
14
|
-
register(fastify) {
|
|
15
|
-
fastify.register(_cookie.default, this.options);
|
|
16
|
-
}
|
|
17
|
-
}
|
|
18
|
-
exports.CookiePlugin = CookiePlugin;
|
package/lib/_cjs/plugins/cors.js
DELETED
|
@@ -1,38 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
|
|
4
|
-
exports.__esModule = true;
|
|
5
|
-
exports.CorsPlugin = void 0;
|
|
6
|
-
var _cors = _interopRequireDefault(require("@fastify/cors"));
|
|
7
|
-
var _vtils = require("vtils");
|
|
8
|
-
/**
|
|
9
|
-
* CORS 支持插件
|
|
10
|
-
*/
|
|
11
|
-
class CorsPlugin {
|
|
12
|
-
constructor(options) {
|
|
13
|
-
this.options = options;
|
|
14
|
-
}
|
|
15
|
-
register(fastify) {
|
|
16
|
-
const allows = this.options.allow.map(item => ({
|
|
17
|
-
type: item === '*' ? 'all' : item.startsWith('*.') ? 'endsWith' : 'equal',
|
|
18
|
-
domain: item.startsWith('*.') ? item.replace('*.', '.') : item
|
|
19
|
-
}));
|
|
20
|
-
const allowAll = allows.length === 1 && allows[0].type === 'all';
|
|
21
|
-
const check = (0, _vtils.memoize)(origin => {
|
|
22
|
-
let i = origin.indexOf(':');
|
|
23
|
-
let j = origin.indexOf(':', i + 1);
|
|
24
|
-
i += 3;
|
|
25
|
-
j = j === -1 ? origin.length : j;
|
|
26
|
-
const domain = origin.substring(i, j);
|
|
27
|
-
const pass = allows.some(item => item.type === 'equal' ? domain === item.domain : domain.endsWith(item.domain));
|
|
28
|
-
return pass;
|
|
29
|
-
});
|
|
30
|
-
fastify.register(_cors.default, {
|
|
31
|
-
origin: (origin, cb) => allowAll ? cb(null, true) : cb(null, origin ? check(origin) : true),
|
|
32
|
-
maxAge: (0, _vtils.ms)(this.options.ttl, true),
|
|
33
|
-
exposedHeaders: ['x-trace-id'],
|
|
34
|
-
...(0, _vtils.omitStrict)(this.options, ['allow', 'ttl'])
|
|
35
|
-
});
|
|
36
|
-
}
|
|
37
|
-
}
|
|
38
|
-
exports.CorsPlugin = CorsPlugin;
|
|
@@ -1,28 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard").default;
|
|
4
|
-
exports.__esModule = true;
|
|
5
|
-
exports.MultipartFile = exports.FileParserPlugin = void 0;
|
|
6
|
-
var _multipart = _interopRequireWildcard(require("@fastify/multipart"));
|
|
7
|
-
exports.MultipartFile = _multipart.MultipartFile;
|
|
8
|
-
var _vtils = require("vtils");
|
|
9
|
-
/**
|
|
10
|
-
* file 解析器插件
|
|
11
|
-
*
|
|
12
|
-
* 注意:默认文件大小限制 1MB
|
|
13
|
-
*/
|
|
14
|
-
class FileParserPlugin {
|
|
15
|
-
constructor(options) {
|
|
16
|
-
this.options = options;
|
|
17
|
-
}
|
|
18
|
-
register(fastify) {
|
|
19
|
-
fastify.register(_multipart.default, {
|
|
20
|
-
...this.options,
|
|
21
|
-
limits: {
|
|
22
|
-
fileSize: (0, _vtils.bytes)(1, 'MB'),
|
|
23
|
-
...this.options?.limits
|
|
24
|
-
}
|
|
25
|
-
});
|
|
26
|
-
}
|
|
27
|
-
}
|
|
28
|
-
exports.FileParserPlugin = FileParserPlugin;
|
|
@@ -1,18 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
|
|
4
|
-
exports.__esModule = true;
|
|
5
|
-
exports.FormBodyParserPlugin = void 0;
|
|
6
|
-
var _formbody = _interopRequireDefault(require("@fastify/formbody"));
|
|
7
|
-
/**
|
|
8
|
-
* POST application/x-www-form-urlencoded 解析器插件
|
|
9
|
-
*/
|
|
10
|
-
class FormBodyParserPlugin {
|
|
11
|
-
constructor(options) {
|
|
12
|
-
this.options = options;
|
|
13
|
-
}
|
|
14
|
-
register(fastify) {
|
|
15
|
-
fastify.register(_formbody.default, this.options);
|
|
16
|
-
}
|
|
17
|
-
}
|
|
18
|
-
exports.FormBodyParserPlugin = FormBodyParserPlugin;
|
|
@@ -1,18 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
|
|
4
|
-
exports.__esModule = true;
|
|
5
|
-
exports.WsParserPlugin = void 0;
|
|
6
|
-
var _websocket = _interopRequireDefault(require("@fastify/websocket"));
|
|
7
|
-
/**
|
|
8
|
-
* websocket 解析器插件
|
|
9
|
-
*/
|
|
10
|
-
class WsParserPlugin {
|
|
11
|
-
constructor(options) {
|
|
12
|
-
this.options = options;
|
|
13
|
-
}
|
|
14
|
-
register(fastify) {
|
|
15
|
-
fastify.register(_websocket.default, this.options);
|
|
16
|
-
}
|
|
17
|
-
}
|
|
18
|
-
exports.WsParserPlugin = WsParserPlugin;
|