knight-server 1.0.20 → 1.0.22
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/base/AbstractRouter.d.ts +13 -1
- package/base/AbstractRouter.d.ts.map +1 -1
- package/base/AbstractRouter.js.map +1 -1
- package/module/database/DataBaseModule.d.ts +6 -0
- package/module/database/DataBaseModule.d.ts.map +1 -1
- package/module/database/DataBaseModule.js +39 -0
- package/module/database/DataBaseModule.js.map +1 -1
- package/module/database/DataBaseRouter.d.ts +2 -2
- package/module/database/DataBaseRouter.d.ts.map +1 -1
- package/module/database/DataBaseRouter.js +5 -2
- package/module/database/DataBaseRouter.js.map +1 -1
- package/module/http/HttpRouter.d.ts +10 -10
- package/module/http/HttpRouter.d.ts.map +1 -1
- package/module/http/HttpRouter.js +10 -17
- package/module/http/HttpRouter.js.map +1 -1
- package/module/websocket/WebSocketClient.d.ts +4 -2
- package/module/websocket/WebSocketClient.d.ts.map +1 -1
- package/module/websocket/WebSocketClient.js +7 -6
- package/module/websocket/WebSocketClient.js.map +1 -1
- package/module/websocket/WebSocketRouter.d.ts +5 -5
- package/module/websocket/WebSocketRouter.d.ts.map +1 -1
- package/module/websocket/WebSocketRouter.js +5 -5
- package/module/websocket/WebSocketRouter.js.map +1 -1
- package/package.json +1 -1
package/base/AbstractRouter.d.ts
CHANGED
|
@@ -8,7 +8,7 @@ export declare abstract class AbstractRouter extends AbstractObject {
|
|
|
8
8
|
/** 构造函数 */
|
|
9
9
|
constructor(server: Server, path: string);
|
|
10
10
|
/** 校验规则 */
|
|
11
|
-
abstract OnCheck(...args: Array<any>): Promise<
|
|
11
|
+
abstract OnCheck(...args: Array<any>): Promise<CheckResult>;
|
|
12
12
|
/** 逻辑处理 */
|
|
13
13
|
abstract OnHandler(...args: Array<any>): Promise<void>;
|
|
14
14
|
/** 获取服务路由路径 */
|
|
@@ -22,6 +22,18 @@ export interface RouterData {
|
|
|
22
22
|
/** 路由类型 */
|
|
23
23
|
type: InterfaceUtility.IType<AbstractRouter>;
|
|
24
24
|
}
|
|
25
|
+
/** 检测结果接口 */
|
|
26
|
+
export interface CheckResult<T extends CheckPayload = CheckPayload> {
|
|
27
|
+
/** 是否有效 */
|
|
28
|
+
valid: boolean;
|
|
29
|
+
/** 负载数据 */
|
|
30
|
+
payload?: T;
|
|
31
|
+
}
|
|
32
|
+
/** 检测负载 */
|
|
33
|
+
export interface CheckPayload {
|
|
34
|
+
/** 错误信息 */
|
|
35
|
+
error?: string;
|
|
36
|
+
}
|
|
25
37
|
export declare const RouteRegistry: Array<RouterData>;
|
|
26
38
|
/** 注册路由 */
|
|
27
39
|
export declare function OnRegister(path: string): <T extends InterfaceUtility.IType<AbstractRouter>>(constructor: T) => void;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AbstractRouter.d.ts","sourceRoot":"","sources":["../../src/base/AbstractRouter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAE,gBAAgB,EAAiB,MAAM,YAAY,CAAC;AAC7D,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AAEnC,aAAa;AACb,8BAAsB,cAAe,SAAQ,cAAc;IAEvD,WAAW;IACX,SAAS,CAAC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IAEhC,WAAW;gBACQ,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM;IAK/C,WAAW;aACK,OAAO,CAAC,GAAG,IAAI,EAAE,KAAK,CAAC,GAAG,CAAC,GAAG,OAAO,CAAC,
|
|
1
|
+
{"version":3,"file":"AbstractRouter.d.ts","sourceRoot":"","sources":["../../src/base/AbstractRouter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAE,gBAAgB,EAAiB,MAAM,YAAY,CAAC;AAC7D,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AAEnC,aAAa;AACb,8BAAsB,cAAe,SAAQ,cAAc;IAEvD,WAAW;IACX,SAAS,CAAC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IAEhC,WAAW;gBACQ,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM;IAK/C,WAAW;aACK,OAAO,CAAC,GAAG,IAAI,EAAE,KAAK,CAAC,GAAG,CAAC,GAAG,OAAO,CAAC,WAAW,CAAC;IAClE,WAAW;aACK,SAAS,CAAC,GAAG,IAAI,EAAE,KAAK,CAAC,GAAG,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;IAC7D,eAAe;aACC,uBAAuB,IAAI,MAAM;IAC1C,SAAS,IAAI,IAAI;CAK3B;AACD,WAAW;AACX,MAAM,WAAW,UAAU;IAEvB,SAAS;IACT,IAAI,EAAE,MAAM,CAAC;IACb,WAAW;IACX,IAAI,EAAE,gBAAgB,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC;CAChD;AACD,aAAa;AACb,MAAM,WAAW,WAAW,CAAC,CAAC,SAAS,YAAY,GAAG,YAAY;IAE9D,WAAW;IACX,KAAK,EAAE,OAAO,CAAC;IACf,WAAW;IACX,OAAO,CAAC,EAAE,CAAC,CAAC;CACf;AACD,WAAW;AACX,MAAM,WAAW,YAAY;IAEzB,WAAW;IACX,KAAK,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,eAAO,MAAM,aAAa,EAAE,KAAK,CAAC,UAAU,CAA2B,CAAC;AACxE,WAAW;AACX,wBAAgB,UAAU,CAAC,IAAI,EAAE,MAAM,IAElB,CAAC,SAAS,gBAAgB,CAAC,KAAK,CAAC,cAAc,CAAC,EAAE,aAAa,CAAC,KAAG,IAAI,CAO3F"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AbstractRouter.js","sourceRoot":"","sources":["../../src/base/AbstractRouter.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"AbstractRouter.js","sourceRoot":"","sources":["../../src/base/AbstractRouter.ts"],"names":[],"mappings":";;;AAqDA,gCASC;AA9DD,qDAAkD;AAClD,wCAA6D;AAG7D,aAAa;AACb,MAAsB,cAAe,SAAQ,+BAAc;IAKvD,WAAW;IACX,YAAmB,MAAc,EAAE,IAAY;QAE3C,KAAK,CAAC,MAAM,CAAC,CAAC;QACd,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;IACrB,CAAC;IAOM,SAAS;QAEZ,KAAK,CAAC,SAAS,EAAE,CAAC;IACtB,CAAC;CAEJ;AAtBD,wCAsBC;AAuBD,gCAAgC;AACnB,QAAA,aAAa,GAAsB,IAAI,KAAK,EAAc,CAAC;AACxE,WAAW;AACX,SAAgB,UAAU,CAAC,IAAY;IAEnC,OAAO,UAA4D,WAAc;QAE7E,IAAI,uBAAa,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC;YAAC,OAAO;QAAC,CAAC;QAC1C,MAAM,cAAc,GAAG,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,GAAG,IAAI,CAAC;QAChE,MAAM,uBAAuB,GAAG,cAAc,CAAC,WAAW,EAAE,CAAC;QAC7D,qBAAa,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,uBAAuB,EAAE,IAAI,EAAE,WAAW,EAAE,CAAC,CAAC;IAC7E,CAAC,CAAC;AACN,CAAC"}
|
|
@@ -8,10 +8,14 @@ export declare class DataBaseModule extends AbstarctModule<DataBaseConfig, DataB
|
|
|
8
8
|
protected config: DataBaseConfig;
|
|
9
9
|
/** MySQL数据库池 */
|
|
10
10
|
private pool;
|
|
11
|
+
/** 连接状态标记 */
|
|
12
|
+
private _connected;
|
|
11
13
|
/** 构造函数 */
|
|
12
14
|
constructor(server: Server, express: Express);
|
|
13
15
|
OnStart(config: DataBaseConfig): Promise<void>;
|
|
14
16
|
OnStop(): Promise<void>;
|
|
17
|
+
/** 数据库是否已连接 */
|
|
18
|
+
isConnected(): boolean;
|
|
15
19
|
OnRegistRouter(routerData: RouterData): DataBaseRouter;
|
|
16
20
|
OnDegistRouter(path: string): boolean;
|
|
17
21
|
OnGetServerHostPort(): string;
|
|
@@ -22,6 +26,8 @@ export declare class DataBaseModule extends AbstarctModule<DataBaseConfig, DataB
|
|
|
22
26
|
private normalizeTableKey;
|
|
23
27
|
/** 获取表对应的路由 */
|
|
24
28
|
private getRouter;
|
|
29
|
+
/** 访问校验:调用路由 OnCheck,失败返回错误信息 */
|
|
30
|
+
private checkAccess;
|
|
25
31
|
/** 插入前钩子分发 */
|
|
26
32
|
private hookBeforeInsert;
|
|
27
33
|
/** 更新前钩子分发 */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DataBaseModule.d.ts","sourceRoot":"","sources":["../../../src/module/database/DataBaseModule.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,gBAAgB,CAAC;AACxC,OAAO,EAAE,OAAO,EAAE,MAAM,2BAA2B,CAAC;AACpD,OAAO,EAAE,cAAc,EAAE,YAAY,EAAE,UAAU,EAAiB,MAAM,YAAY,CAAC;AAErF,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AACtC,OAAO,EAAE,cAAc,EAAc,MAAM,kBAAkB,CAAC;AAE9D,YAAY;AACZ,qBAAa,cAAe,SAAQ,cAAc,CAAC,cAAc,EAAE,cAAc,CAAC;IAE9E,SAAS,CAAC,MAAM,EAAE,cAAc,CAAC;IACjC,gBAAgB;IAChB,OAAO,CAAC,IAAI,CAAa;
|
|
1
|
+
{"version":3,"file":"DataBaseModule.d.ts","sourceRoot":"","sources":["../../../src/module/database/DataBaseModule.ts"],"names":[],"mappings":"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"}
|
|
@@ -43,12 +43,15 @@ class DataBaseModule extends base_1.AbstarctModule {
|
|
|
43
43
|
/** 构造函数 */
|
|
44
44
|
constructor(server, express) {
|
|
45
45
|
super(server, express);
|
|
46
|
+
/** 连接状态标记 */
|
|
47
|
+
this._connected = false;
|
|
46
48
|
}
|
|
47
49
|
async OnStart(config) {
|
|
48
50
|
this.config = config;
|
|
49
51
|
this.pool = MYSQL.createPool(config);
|
|
50
52
|
const connection = await this.pool.getConnection();
|
|
51
53
|
connection.release();
|
|
54
|
+
this._connected = true;
|
|
52
55
|
// 注册数据库路由
|
|
53
56
|
const routerRegistry = base_1.RouteRegistry.filter(routerData => routerData.type.prototype instanceof DataBaseRouter_1.DataBaseRouter);
|
|
54
57
|
for (const routerData of routerRegistry) {
|
|
@@ -64,8 +67,13 @@ class DataBaseModule extends base_1.AbstarctModule {
|
|
|
64
67
|
this.logInfo(`🌏 ${config.host}:${config.port}`);
|
|
65
68
|
}
|
|
66
69
|
async OnStop() {
|
|
70
|
+
this._connected = false;
|
|
67
71
|
await this.pool?.end();
|
|
68
72
|
}
|
|
73
|
+
/** 数据库是否已连接 */
|
|
74
|
+
isConnected() {
|
|
75
|
+
return this._connected;
|
|
76
|
+
}
|
|
69
77
|
OnRegistRouter(routerData) {
|
|
70
78
|
if (null == routerData) {
|
|
71
79
|
this.logError("路由数据为空");
|
|
@@ -109,6 +117,14 @@ class DataBaseModule extends base_1.AbstarctModule {
|
|
|
109
117
|
getRouter(table) {
|
|
110
118
|
return this.routers.get(this.normalizeTableKey(table));
|
|
111
119
|
}
|
|
120
|
+
/** 访问校验:调用路由 OnCheck,失败返回错误信息 */
|
|
121
|
+
async checkAccess(table) {
|
|
122
|
+
const router = this.getRouter(table);
|
|
123
|
+
if (!router)
|
|
124
|
+
return null;
|
|
125
|
+
const result = await router.OnCheck(this.server);
|
|
126
|
+
return result?.valid ? null : result?.payload?.error || "访问被拒绝";
|
|
127
|
+
}
|
|
112
128
|
/** 插入前钩子分发 */
|
|
113
129
|
async hookBeforeInsert(table, data) {
|
|
114
130
|
const router = this.getRouter(table);
|
|
@@ -165,6 +181,9 @@ class DataBaseModule extends base_1.AbstarctModule {
|
|
|
165
181
|
* @param params 参数(可选)
|
|
166
182
|
*/
|
|
167
183
|
async find(table, where, params = []) {
|
|
184
|
+
const err = await this.checkAccess(table);
|
|
185
|
+
if (err)
|
|
186
|
+
return { success: false, error: err };
|
|
168
187
|
try {
|
|
169
188
|
const sql = where
|
|
170
189
|
? `SELECT * FROM \`${table}\` WHERE ${where}`
|
|
@@ -191,6 +210,9 @@ class DataBaseModule extends base_1.AbstarctModule {
|
|
|
191
210
|
* @param params 参数
|
|
192
211
|
*/
|
|
193
212
|
async findOne(table, where, params = []) {
|
|
213
|
+
const err = await this.checkAccess(table);
|
|
214
|
+
if (err)
|
|
215
|
+
return { success: false, error: err };
|
|
194
216
|
try {
|
|
195
217
|
const sql = `SELECT * FROM \`${table}\` WHERE ${where} LIMIT 1`;
|
|
196
218
|
const [rows] = await this.executeQuery(sql, params);
|
|
@@ -225,6 +247,9 @@ class DataBaseModule extends base_1.AbstarctModule {
|
|
|
225
247
|
* @param data 要插入的数据对象
|
|
226
248
|
*/
|
|
227
249
|
async insert(table, data) {
|
|
250
|
+
const err = await this.checkAccess(table);
|
|
251
|
+
if (err)
|
|
252
|
+
return { success: false, error: err };
|
|
228
253
|
// 插入前钩子
|
|
229
254
|
const hookResult = await this.hookBeforeInsert(table, data);
|
|
230
255
|
if (!hookResult.proceed) {
|
|
@@ -256,6 +281,9 @@ class DataBaseModule extends base_1.AbstarctModule {
|
|
|
256
281
|
* @param dataArray 数据对象数组
|
|
257
282
|
*/
|
|
258
283
|
async insertBatch(table, dataArray) {
|
|
284
|
+
const err = await this.checkAccess(table);
|
|
285
|
+
if (err)
|
|
286
|
+
return { success: false, error: err };
|
|
259
287
|
if (dataArray.length === 0) {
|
|
260
288
|
return { success: false, error: '没有数据可插入' };
|
|
261
289
|
}
|
|
@@ -292,6 +320,9 @@ class DataBaseModule extends base_1.AbstarctModule {
|
|
|
292
320
|
* @param whereParams 条件参数
|
|
293
321
|
*/
|
|
294
322
|
async update(table, data, where, whereParams = []) {
|
|
323
|
+
const err = await this.checkAccess(table);
|
|
324
|
+
if (err)
|
|
325
|
+
return { success: false, error: err };
|
|
295
326
|
// 更新前钩子
|
|
296
327
|
const hookResult = await this.hookBeforeUpdate(table, data, where, whereParams);
|
|
297
328
|
if (!hookResult.proceed) {
|
|
@@ -334,6 +365,9 @@ class DataBaseModule extends base_1.AbstarctModule {
|
|
|
334
365
|
* @param params 条件参数
|
|
335
366
|
*/
|
|
336
367
|
async delete(table, where, params = []) {
|
|
368
|
+
const err = await this.checkAccess(table);
|
|
369
|
+
if (err)
|
|
370
|
+
return { success: false, error: err };
|
|
337
371
|
// 删除前钩子
|
|
338
372
|
const hookResult = await this.hookBeforeDelete(table, where, params);
|
|
339
373
|
if (!hookResult.proceed) {
|
|
@@ -374,6 +408,9 @@ class DataBaseModule extends base_1.AbstarctModule {
|
|
|
374
408
|
* @param orderBy 排序(可选,如 'id DESC')
|
|
375
409
|
*/
|
|
376
410
|
async paginate(table, page = 1, pageSize = 20, where, params = [], orderBy = 'id DESC') {
|
|
411
|
+
const err = await this.checkAccess(table);
|
|
412
|
+
if (err)
|
|
413
|
+
return { success: false, error: err };
|
|
377
414
|
try {
|
|
378
415
|
const countSql = where
|
|
379
416
|
? `SELECT COUNT(*) as total FROM \`${table}\` WHERE ${where}`
|
|
@@ -407,6 +444,7 @@ class DataBaseModule extends base_1.AbstarctModule {
|
|
|
407
444
|
* @param params 参数
|
|
408
445
|
*/
|
|
409
446
|
async query(sql, params = []) {
|
|
447
|
+
// 自定义 SQL 没有表名,不按表做路由校验
|
|
410
448
|
try {
|
|
411
449
|
const [rows] = await this.executeQuery(sql, params);
|
|
412
450
|
return {
|
|
@@ -428,6 +466,7 @@ class DataBaseModule extends base_1.AbstarctModule {
|
|
|
428
466
|
* @param callback 事务回调函数,返回结果或Promise
|
|
429
467
|
*/
|
|
430
468
|
async transaction(callback) {
|
|
469
|
+
// 事务无特定表名,不做路由校验
|
|
431
470
|
if (!this.pool) {
|
|
432
471
|
return { success: false, error: '数据库连接池未初始化' };
|
|
433
472
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DataBaseModule.js","sourceRoot":"","sources":["../../../src/module/database/DataBaseModule.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"DataBaseModule.js","sourceRoot":"","sources":["../../../src/module/database/DataBaseModule.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { AbstractRouter } from "../../base";
|
|
1
|
+
import { AbstractRouter, CheckResult } from "../../base";
|
|
2
2
|
import { Server } from "../../Server";
|
|
3
3
|
/** Hook 返回结果 */
|
|
4
4
|
export interface HookResult<T = any> {
|
|
@@ -12,7 +12,7 @@ export interface HookResult<T = any> {
|
|
|
12
12
|
/** 抽象数据库路由(业务逻辑钩子) */
|
|
13
13
|
export declare abstract class DataBaseRouter extends AbstractRouter {
|
|
14
14
|
constructor(server: Server, path: string);
|
|
15
|
-
OnCheck(
|
|
15
|
+
OnCheck(server: Server): Promise<CheckResult>;
|
|
16
16
|
OnHandler(...args: Array<any>): Promise<void>;
|
|
17
17
|
OnGetServerHostPortPath(): string;
|
|
18
18
|
/** 插入前拦截 */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DataBaseRouter.d.ts","sourceRoot":"","sources":["../../../src/module/database/DataBaseRouter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"DataBaseRouter.d.ts","sourceRoot":"","sources":["../../../src/module/database/DataBaseRouter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AACzD,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AAEtC,gBAAgB;AAChB,MAAM,WAAW,UAAU,CAAC,CAAC,GAAG,GAAG;IAE/B,2BAA2B;IAC3B,OAAO,EAAE,OAAO,CAAC;IACjB,kCAAkC;IAClC,IAAI,CAAC,EAAE,CAAC,CAAC;IACT,iBAAiB;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,sBAAsB;AACtB,8BAAsB,cAAe,SAAQ,cAAc;gBAEpC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM;IAOlC,OAAO,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC;IAQ7C,SAAS,CAAC,GAAG,IAAI,EAAE,KAAK,CAAC,GAAG,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;IAInD,uBAAuB,IAAI,MAAM;IAOxC,YAAY;IACC,cAAc,CAAC,IAAI,EAAE,GAAG,GAAG,OAAO,CAAC,UAAU,CAAC;IAI3D,YAAY;IACC,cAAc,CAAC,IAAI,EAAE,GAAG,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,GAAG,OAAO,CAAC,UAAU,CAAC;IAIzF,YAAY;IACC,cAAc,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,GAAG,OAAO,CAAC,UAAU,CAAC;IAI9E,wBAAwB;IACX,aAAa,CAAC,IAAI,EAAE,GAAG,EAAE,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;IAKhD,SAAS,IAAI,IAAI;CAI3B"}
|
|
@@ -8,8 +8,11 @@ class DataBaseRouter extends base_1.AbstractRouter {
|
|
|
8
8
|
super(server, path);
|
|
9
9
|
}
|
|
10
10
|
// ======== AbstractRouter 默认实现 ========
|
|
11
|
-
async OnCheck(
|
|
12
|
-
|
|
11
|
+
async OnCheck(server) {
|
|
12
|
+
if (!server.database.isConnected()) {
|
|
13
|
+
return { valid: false, payload: { error: "数据库未连接" } };
|
|
14
|
+
}
|
|
15
|
+
return { valid: true };
|
|
13
16
|
}
|
|
14
17
|
async OnHandler(...args) {
|
|
15
18
|
// CRUD 由模块分发,本方法保留以备扩展
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DataBaseRouter.js","sourceRoot":"","sources":["../../../src/module/database/DataBaseRouter.ts"],"names":[],"mappings":";;;AAAA,
|
|
1
|
+
{"version":3,"file":"DataBaseRouter.js","sourceRoot":"","sources":["../../../src/module/database/DataBaseRouter.ts"],"names":[],"mappings":";;;AAAA,qCAAyD;AAczD,sBAAsB;AACtB,MAAsB,cAAe,SAAQ,qBAAc;IAEvD,YAAmB,MAAc,EAAE,IAAY;QAE3C,KAAK,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;IACxB,CAAC;IAED,wCAAwC;IAEjC,KAAK,CAAC,OAAO,CAAC,MAAc;QAE/B,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,WAAW,EAAE,EAClC,CAAC;YACG,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE,KAAK,EAAE,QAAQ,EAAE,EAAE,CAAC;QAC1D,CAAC;QACD,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC;IAC3B,CAAC;IACM,KAAK,CAAC,SAAS,CAAC,GAAG,IAAgB;QAEtC,uBAAuB;IAC3B,CAAC;IACM,uBAAuB;QAE1B,OAAO,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,mBAAmB,EAAE,GAAG,IAAI,CAAC,IAAI,CAAC;IAClE,CAAC;IAED,wCAAwC;IAExC,YAAY;IACL,KAAK,CAAC,cAAc,CAAC,IAAS;QAEjC,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;IACnC,CAAC;IACD,YAAY;IACL,KAAK,CAAC,cAAc,CAAC,IAAS,EAAE,KAAa,EAAE,MAAa;QAE/D,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;IACnC,CAAC;IACD,YAAY;IACL,KAAK,CAAC,cAAc,CAAC,KAAa,EAAE,MAAa;QAEpD,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;IAC7B,CAAC;IACD,wBAAwB;IACjB,KAAK,CAAC,aAAa,CAAC,IAAW;QAElC,OAAO,IAAI,CAAC;IAChB,CAAC;IAEM,SAAS;QAEZ,KAAK,CAAC,SAAS,EAAE,CAAC;IACtB,CAAC;CACJ;AArDD,wCAqDC"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { Request, Response } from "express";
|
|
2
|
-
import { AbstractRouter } from "../../base";
|
|
2
|
+
import { AbstractRouter, CheckResult } from "../../base";
|
|
3
3
|
import { Server } from "../../Server";
|
|
4
4
|
/** 抽象HTTP路由 */
|
|
5
5
|
export declare abstract class HttpRouter extends AbstractRouter {
|
|
@@ -8,23 +8,23 @@ export declare abstract class HttpRouter extends AbstractRouter {
|
|
|
8
8
|
/** 逻辑处理 */
|
|
9
9
|
OnHandler(request: HttpRequest, response: HttpResponse): Promise<void>;
|
|
10
10
|
/** 鉴权处理 */
|
|
11
|
-
abstract OnCheck(server: Server, request: HttpRequest, response: HttpResponse): Promise<
|
|
11
|
+
abstract OnCheck(server: Server, request: HttpRequest, response: HttpResponse): Promise<CheckResult>;
|
|
12
12
|
/** Get方法逻辑处理函数 */
|
|
13
|
-
protected abstract OnGetHandler(server: Server, request: HttpRequest, response: HttpResponse): Promise<void>;
|
|
13
|
+
protected abstract OnGetHandler(server: Server, checkResult: CheckResult, request: HttpRequest, response: HttpResponse): Promise<void>;
|
|
14
14
|
/** Post方法逻辑处理函数 */
|
|
15
|
-
protected abstract OnPostHandler(server: Server, request: HttpRequest, response: HttpResponse): Promise<void>;
|
|
15
|
+
protected abstract OnPostHandler(server: Server, checkResult: CheckResult, request: HttpRequest, response: HttpResponse): Promise<void>;
|
|
16
16
|
/** Put方法逻辑处理函数 */
|
|
17
|
-
protected abstract OnPutHandler(server: Server, request: HttpRequest, response: HttpResponse): Promise<void>;
|
|
17
|
+
protected abstract OnPutHandler(server: Server, checkResult: CheckResult, request: HttpRequest, response: HttpResponse): Promise<void>;
|
|
18
18
|
/** Delete方法逻辑处理函数 */
|
|
19
|
-
protected abstract OnDeleteHandler(server: Server, request: HttpRequest, response: HttpResponse): Promise<void>;
|
|
19
|
+
protected abstract OnDeleteHandler(server: Server, checkResult: CheckResult, request: HttpRequest, response: HttpResponse): Promise<void>;
|
|
20
20
|
/** Options方法逻辑处理函数 */
|
|
21
|
-
protected abstract OnOptionsHandler(server: Server, request: HttpRequest, response: HttpResponse): Promise<void>;
|
|
21
|
+
protected abstract OnOptionsHandler(server: Server, checkResult: CheckResult, request: HttpRequest, response: HttpResponse): Promise<void>;
|
|
22
22
|
/** Head方法逻辑处理函数 */
|
|
23
|
-
protected abstract OnHeadHandler(server: Server, request: HttpRequest, response: HttpResponse): Promise<void>;
|
|
23
|
+
protected abstract OnHeadHandler(server: Server, checkResult: CheckResult, request: HttpRequest, response: HttpResponse): Promise<void>;
|
|
24
24
|
/** Patch方法逻辑处理函数 */
|
|
25
|
-
protected abstract OnPatchHandler(server: Server, request: HttpRequest, response: HttpResponse): Promise<void>;
|
|
25
|
+
protected abstract OnPatchHandler(server: Server, checkResult: CheckResult, request: HttpRequest, response: HttpResponse): Promise<void>;
|
|
26
26
|
/** Trace方法逻辑处理函数 */
|
|
27
|
-
protected abstract OnTraceHandler(server: Server, request: HttpRequest, response: HttpResponse): Promise<void>;
|
|
27
|
+
protected abstract OnTraceHandler(server: Server, checkResult: CheckResult, request: HttpRequest, response: HttpResponse): Promise<void>;
|
|
28
28
|
OnGetServerHostPortPath(): string;
|
|
29
29
|
OnDestroy(): void;
|
|
30
30
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"HttpRouter.d.ts","sourceRoot":"","sources":["../../../src/module/http/HttpRouter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAC5C,OAAO,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"HttpRouter.d.ts","sourceRoot":"","sources":["../../../src/module/http/HttpRouter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAC5C,OAAO,EAAE,cAAc,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAEzD,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AAEtC,eAAe;AACf,8BAAsB,UAAW,SAAQ,cAAc;IAEnD,WAAW;gBACQ,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM;IAI/C,WAAW;IACE,SAAS,CAAC,OAAO,EAAE,WAAW,EAAE,QAAQ,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC;IAsBnF,WAAW;aACK,OAAO,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,WAAW,EAAE,QAAQ,EAAE,YAAY,GAAG,OAAO,CAAC,WAAW,CAAC;IAC3G,kBAAkB;IAClB,SAAS,CAAC,QAAQ,CAAC,YAAY,CAAC,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,WAAW,EAAE,OAAO,EAAE,WAAW,EAAE,QAAQ,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC;IACtI,mBAAmB;IACnB,SAAS,CAAC,QAAQ,CAAC,aAAa,CAAC,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,WAAW,EAAE,OAAO,EAAE,WAAW,EAAE,QAAQ,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC;IACvI,kBAAkB;IAClB,SAAS,CAAC,QAAQ,CAAC,YAAY,CAAC,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,WAAW,EAAE,OAAO,EAAE,WAAW,EAAE,QAAQ,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC;IACtI,qBAAqB;IACrB,SAAS,CAAC,QAAQ,CAAC,eAAe,CAAC,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,WAAW,EAAE,OAAO,EAAE,WAAW,EAAE,QAAQ,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC;IACzI,sBAAsB;IACtB,SAAS,CAAC,QAAQ,CAAC,gBAAgB,CAAC,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,WAAW,EAAE,OAAO,EAAE,WAAW,EAAE,QAAQ,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC;IAC1I,mBAAmB;IACnB,SAAS,CAAC,QAAQ,CAAC,aAAa,CAAC,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,WAAW,EAAE,OAAO,EAAE,WAAW,EAAE,QAAQ,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC;IACvI,oBAAoB;IACpB,SAAS,CAAC,QAAQ,CAAC,cAAc,CAAC,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,WAAW,EAAE,OAAO,EAAE,WAAW,EAAE,QAAQ,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC;IACxI,oBAAoB;IACpB,SAAS,CAAC,QAAQ,CAAC,cAAc,CAAC,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,WAAW,EAAE,OAAO,EAAE,WAAW,EAAE,QAAQ,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC;IAEjI,uBAAuB,IAAI,MAAM;IAKjC,SAAS,IAAI,IAAI;CAI3B;AACD,eAAe;AACf,MAAM,MAAM,WAAW,GAAG,OAAO,CAAC;AAClC,eAAe;AACf,MAAM,MAAM,YAAY,GAAG,QAAQ,CAAC"}
|
|
@@ -14,43 +14,36 @@ class HttpRouter extends base_1.AbstractRouter {
|
|
|
14
14
|
if (null == request || utility_1.StringUtility.empty(request.method) || null == response) {
|
|
15
15
|
return;
|
|
16
16
|
}
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
// if (!authorization || !authorization.startsWith("Bearer "))
|
|
20
|
-
// {
|
|
21
|
-
// response.status(ResponseCode.UNAUTHORIZED).send("未认证,请先登录");
|
|
22
|
-
// return false;
|
|
23
|
-
// }
|
|
24
|
-
const check = await this.OnCheck(this.server, request, response);
|
|
25
|
-
if (!check) {
|
|
17
|
+
const result = await this.OnCheck(this.server, request, response);
|
|
18
|
+
if (null == result || !result.valid) {
|
|
26
19
|
response.status(utility_1.NetworkUtility.ResponseCode.UNAUTHORIZED).send("令牌无效,请先登录");
|
|
27
20
|
return;
|
|
28
21
|
}
|
|
29
22
|
// 根据请求中的方法进行路由分发
|
|
30
23
|
switch (request.method.toLowerCase()) {
|
|
31
24
|
case utility_1.NetworkUtility.E_ProtocalType.Get:
|
|
32
|
-
await this.OnGetHandler(this.server, request, response);
|
|
25
|
+
await this.OnGetHandler(this.server, result, request, response);
|
|
33
26
|
break;
|
|
34
27
|
case utility_1.NetworkUtility.E_ProtocalType.Post:
|
|
35
|
-
await this.OnPostHandler(this.server, request, response);
|
|
28
|
+
await this.OnPostHandler(this.server, result, request, response);
|
|
36
29
|
break;
|
|
37
30
|
case utility_1.NetworkUtility.E_ProtocalType.Put:
|
|
38
|
-
await this.OnPutHandler(this.server, request, response);
|
|
31
|
+
await this.OnPutHandler(this.server, result, request, response);
|
|
39
32
|
break;
|
|
40
33
|
case utility_1.NetworkUtility.E_ProtocalType.Delete:
|
|
41
|
-
await this.OnDeleteHandler(this.server, request, response);
|
|
34
|
+
await this.OnDeleteHandler(this.server, result, request, response);
|
|
42
35
|
break;
|
|
43
36
|
case utility_1.NetworkUtility.E_ProtocalType.Options:
|
|
44
|
-
await this.OnOptionsHandler(this.server, request, response);
|
|
37
|
+
await this.OnOptionsHandler(this.server, result, request, response);
|
|
45
38
|
break;
|
|
46
39
|
case utility_1.NetworkUtility.E_ProtocalType.Head:
|
|
47
|
-
await this.OnHeadHandler(this.server, request, response);
|
|
40
|
+
await this.OnHeadHandler(this.server, result, request, response);
|
|
48
41
|
break;
|
|
49
42
|
case utility_1.NetworkUtility.E_ProtocalType.Patch:
|
|
50
|
-
await this.OnPatchHandler(this.server, request, response);
|
|
43
|
+
await this.OnPatchHandler(this.server, result, request, response);
|
|
51
44
|
break;
|
|
52
45
|
case utility_1.NetworkUtility.E_ProtocalType.Trace:
|
|
53
|
-
await this.OnTraceHandler(this.server, request, response);
|
|
46
|
+
await this.OnTraceHandler(this.server, result, request, response);
|
|
54
47
|
break;
|
|
55
48
|
default: return;
|
|
56
49
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"HttpRouter.js","sourceRoot":"","sources":["../../../src/module/http/HttpRouter.ts"],"names":[],"mappings":";;;AACA,
|
|
1
|
+
{"version":3,"file":"HttpRouter.js","sourceRoot":"","sources":["../../../src/module/http/HttpRouter.ts"],"names":[],"mappings":";;;AACA,qCAAyD;AACzD,2CAA8D;AAG9D,eAAe;AACf,MAAsB,UAAW,SAAQ,qBAAc;IAEnD,WAAW;IACX,YAAmB,MAAc,EAAE,IAAY;QAE3C,KAAK,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;IACxB,CAAC;IACD,WAAW;IACJ,KAAK,CAAC,SAAS,CAAC,OAAoB,EAAE,QAAsB;QAE/D,IAAI,IAAI,IAAI,OAAO,IAAI,uBAAa,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,IAAI,IAAI,QAAQ,EAAE,CAAC;YAAC,OAAO;QAAC,CAAC;QAC3F,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,EAAE,OAAO,EAAE,QAAQ,CAAE,CAAC;QACnE,IAAI,IAAI,IAAI,MAAM,IAAI,CAAC,MAAM,CAAC,KAAK,EACnC,CAAC;YACG,QAAQ,CAAC,MAAM,CAAC,wBAAc,CAAC,YAAY,CAAC,YAAY,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;YAAC,OAAO;QACxF,CAAC;QACD,iBAAiB;QACjB,QAAQ,OAAO,CAAC,MAAM,CAAC,WAAW,EAAE,EACpC,CAAC;YACG,KAAK,wBAAc,CAAC,cAAc,CAAC,GAAG;gBAAE,MAAM,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,QAAQ,CAAC,CAAC;gBAAC,MAAM;YAC/G,KAAK,wBAAc,CAAC,cAAc,CAAC,IAAI;gBAAE,MAAM,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,QAAQ,CAAC,CAAC;gBAAC,MAAM;YACjH,KAAK,wBAAc,CAAC,cAAc,CAAC,GAAG;gBAAE,MAAM,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,QAAQ,CAAC,CAAC;gBAAC,MAAM;YAC/G,KAAK,wBAAc,CAAC,cAAc,CAAC,MAAM;gBAAE,MAAM,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,QAAQ,CAAC,CAAC;gBAAC,MAAM;YACrH,KAAK,wBAAc,CAAC,cAAc,CAAC,OAAO;gBAAE,MAAM,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,QAAQ,CAAC,CAAC;gBAAC,MAAM;YACvH,KAAK,wBAAc,CAAC,cAAc,CAAC,IAAI;gBAAE,MAAM,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,QAAQ,CAAC,CAAC;gBAAC,MAAM;YACjH,KAAK,wBAAc,CAAC,cAAc,CAAC,KAAK;gBAAE,MAAM,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,QAAQ,CAAC,CAAC;gBAAC,MAAM;YACnH,KAAK,wBAAc,CAAC,cAAc,CAAC,KAAK;gBAAE,MAAM,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,QAAQ,CAAC,CAAC;gBAAC,MAAM;YACnH,OAAO,CAAC,CAAC,OAAO;QACpB,CAAC;IACL,CAAC;IAoBM,uBAAuB;QAE1B,OAAO,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,mBAAmB,EAAE,GAAG,IAAI,CAAC,IAAI,CAAC;IAC9D,CAAC;IAEM,SAAS;QAEZ,KAAK,CAAC,SAAS,EAAE,CAAC;IACtB,CAAC;CACJ;AA1DD,gCA0DC"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import * as WS from 'ws';
|
|
2
2
|
import { IncomingMessage } from 'http';
|
|
3
|
-
import { AbstractObject } from "../../base";
|
|
3
|
+
import { AbstractObject, CheckResult } from "../../base";
|
|
4
4
|
import { WebSocketRouter } from './WebSocketRouter';
|
|
5
5
|
import { Server } from "../../Server";
|
|
6
6
|
/** WebSocket客户端 */
|
|
@@ -15,6 +15,8 @@ export declare class WebSocketClient extends AbstractObject {
|
|
|
15
15
|
private readonly websocket;
|
|
16
16
|
/** 请求消息数据 */
|
|
17
17
|
private readonly request;
|
|
18
|
+
/** 检测结果数据 */
|
|
19
|
+
private readonly checkResult;
|
|
18
20
|
/** 是否已关闭 */
|
|
19
21
|
private _closed;
|
|
20
22
|
/** 最后心跳时间戳 */
|
|
@@ -22,7 +24,7 @@ export declare class WebSocketClient extends AbstractObject {
|
|
|
22
24
|
/** 心跳计时器 */
|
|
23
25
|
private heartbeatTimer;
|
|
24
26
|
/** 构造函数 */
|
|
25
|
-
constructor(server: Server, router: WebSocketRouter, key: string, url: URL, websocket: WS.WebSocket, request: IncomingMessage);
|
|
27
|
+
constructor(server: Server, router: WebSocketRouter, key: string, url: URL, websocket: WS.WebSocket, request: IncomingMessage, checkResult: CheckResult);
|
|
26
28
|
/** 启动心跳超时检测 */
|
|
27
29
|
private OnStartHeartbeatTimeoutCheck;
|
|
28
30
|
/** 停止心跳超时检测 */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"WebSocketClient.d.ts","sourceRoot":"","sources":["../../../src/module/websocket/WebSocketClient.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,IAAI,CAAC;AACzB,OAAO,EAAE,eAAe,EAAE,MAAM,MAAM,CAAC;AACvC,OAAO,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"WebSocketClient.d.ts","sourceRoot":"","sources":["../../../src/module/websocket/WebSocketClient.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,IAAI,CAAC;AACzB,OAAO,EAAE,eAAe,EAAE,MAAM,MAAM,CAAC;AACvC,OAAO,EAAE,cAAc,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AACzD,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AAEtC,mBAAmB;AACnB,qBAAa,eAAgB,SAAQ,cAAc;IAE/C,WAAW;IACX,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAkB;IACzC,YAAY;IACZ,SAAgB,GAAG,EAAE,MAAM,CAAC;IAC5B,YAAY;IACZ,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAM;IAC1B,kBAAkB;IAClB,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAe;IACzC,aAAa;IACb,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAkB;IAC1C,aAAa;IACb,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAc;IAC1C,YAAY;IACZ,OAAO,CAAC,OAAO,CAAkB;IACjC,cAAc;IACd,OAAO,CAAC,sBAAsB,CAAS;IACvC,YAAY;IACZ,OAAO,CAAC,cAAc,CAAiB;IAEvC,WAAW;gBACQ,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,eAAe,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,GAAG,EAAE,SAAS,EAAE,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,eAAe,EAAE,WAAW,EAAE,WAAW;IAiB9J,eAAe;IACf,OAAO,CAAC,4BAA4B;IAWpC,eAAe;IACf,OAAO,CAAC,2BAA2B;IAMnC,oBAAoB;IACpB,OAAO,CAAC,eAAe;IAMvB,oBAAoB;IACpB,OAAO,CAAC,gBAAgB;IASxB,oBAAoB;IACpB,OAAO,CAAC,gBAAgB;IASxB,oBAAoB;IACpB,OAAO,CAAC,kBAAkB;IAkB1B,sBAAsB;IACtB,OAAO,CAAC,eAAe;IAIvB,sBAAsB;IACtB,OAAO,CAAC,eAAe;IAIvB,YAAY;IACL,OAAO,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI;IAWpD,cAAc;IACP,iBAAiB,IAAI,IAAI;IAIhC,aAAa;IACN,iBAAiB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM;IAI7C,cAAc;IACP,MAAM,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,GAAG,UAAU,GAAG,IAAI;IAI/C,cAAc;IACP,UAAU,CAAC,MAAM,EAAE,eAAe,EAAE,IAAI,EAAE,EAAE,CAAC,IAAI,GAAG,UAAU,GAAG,IAAI;IAK5E,uBAAuB;IAChB,wBAAwB,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,EAAE,CAAC,IAAI,GAAG,UAAU,GAAG,IAAI;IAK7F,cAAc;IACP,WAAW,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,GAAG,UAAU,EAAE,WAAW,GAAE,OAAe,GAAG,IAAI;IAS3E,SAAS,IAAI,IAAI;CAK3B"}
|
|
@@ -5,7 +5,7 @@ const base_1 = require("../../base");
|
|
|
5
5
|
/** WebSocket客户端 */
|
|
6
6
|
class WebSocketClient extends base_1.AbstractObject {
|
|
7
7
|
/** 构造函数 */
|
|
8
|
-
constructor(server, router, key, url, websocket, request) {
|
|
8
|
+
constructor(server, router, key, url, websocket, request, checkResult) {
|
|
9
9
|
super(server);
|
|
10
10
|
/** 是否已关闭 */
|
|
11
11
|
this._closed = false;
|
|
@@ -14,6 +14,7 @@ class WebSocketClient extends base_1.AbstractObject {
|
|
|
14
14
|
this.url = url;
|
|
15
15
|
this.websocket = websocket;
|
|
16
16
|
this.request = request;
|
|
17
|
+
this.checkResult = checkResult;
|
|
17
18
|
this.websocket.on('close', this.OnWebSocketClose.bind(this));
|
|
18
19
|
this.websocket.on('error', this.OnWebSocketError.bind(this));
|
|
19
20
|
this.websocket.on('message', this.OnWebSocketMessage.bind(this));
|
|
@@ -47,7 +48,7 @@ class WebSocketClient extends base_1.AbstractObject {
|
|
|
47
48
|
/** WebSocket打开监听 */
|
|
48
49
|
OnWebSocketOpen() {
|
|
49
50
|
console.log(`[WebSocket客户端连接] <RemoteAddress> ${this.key} <URL> ${this.url}`);
|
|
50
|
-
this.router.OnConnect(this.server, this);
|
|
51
|
+
this.router.OnConnect(this.server, this.checkResult, this);
|
|
51
52
|
this.OnStartHeartbeatTimeoutCheck();
|
|
52
53
|
}
|
|
53
54
|
/** WebSocket关闭监听 */
|
|
@@ -58,7 +59,7 @@ class WebSocketClient extends base_1.AbstractObject {
|
|
|
58
59
|
this._closed = true;
|
|
59
60
|
console.error(`[WebSocket客户端断开] <RemoteAddress> ${this.key} <Code> ${code} <Reason> ${reason.toString()}`);
|
|
60
61
|
this.OnStopHeartbeatTimeoutCheck();
|
|
61
|
-
this.router.OnDisconnect(this.server, this);
|
|
62
|
+
this.router.OnDisconnect(this.server, this.checkResult, this);
|
|
62
63
|
this.router.OnRemoveClient(this.key);
|
|
63
64
|
}
|
|
64
65
|
/** WebSocket错误监听 */
|
|
@@ -69,7 +70,7 @@ class WebSocketClient extends base_1.AbstractObject {
|
|
|
69
70
|
this._closed = true;
|
|
70
71
|
console.log('[WebSocket客户端连接出错]', error);
|
|
71
72
|
this.OnStopHeartbeatTimeoutCheck();
|
|
72
|
-
this.router.OnDisconnect(this.server, this);
|
|
73
|
+
this.router.OnDisconnect(this.server, this.checkResult, this);
|
|
73
74
|
this.router.OnRemoveClient(this.key);
|
|
74
75
|
}
|
|
75
76
|
/** WebSocket消息监听 */
|
|
@@ -94,7 +95,7 @@ class WebSocketClient extends base_1.AbstractObject {
|
|
|
94
95
|
if (null == dataString) {
|
|
95
96
|
return;
|
|
96
97
|
}
|
|
97
|
-
this.router.OnMessage(this.server, this, dataString);
|
|
98
|
+
this.router.OnMessage(this.server, this.checkResult, this, dataString);
|
|
98
99
|
}
|
|
99
100
|
/** WebSocketPing监听 */
|
|
100
101
|
OnWebSocketPing(data) {
|
|
@@ -111,7 +112,7 @@ class WebSocketClient extends base_1.AbstractObject {
|
|
|
111
112
|
}
|
|
112
113
|
this._closed = true;
|
|
113
114
|
this.OnStopHeartbeatTimeoutCheck();
|
|
114
|
-
this.router.OnDisconnect(this.server, this);
|
|
115
|
+
this.router.OnDisconnect(this.server, this.checkResult, this);
|
|
115
116
|
this.router.OnRemoveClient(this.key);
|
|
116
117
|
// 关闭WebSocket连接
|
|
117
118
|
if (null != code && null != reason) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"WebSocketClient.js","sourceRoot":"","sources":["../../../src/module/websocket/WebSocketClient.ts"],"names":[],"mappings":";;;AAEA,
|
|
1
|
+
{"version":3,"file":"WebSocketClient.js","sourceRoot":"","sources":["../../../src/module/websocket/WebSocketClient.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { IncomingMessage } from "http";
|
|
2
2
|
import * as WS from 'ws';
|
|
3
|
-
import { AbstractRouter } from "../../base";
|
|
3
|
+
import { AbstractRouter, CheckResult } from "../../base";
|
|
4
4
|
import { WebSocketClient } from "./WebSocketClient";
|
|
5
5
|
import { Server } from "../../Server";
|
|
6
6
|
/** 抽象WebSocket路由(会话) */
|
|
@@ -30,13 +30,13 @@ export declare abstract class WebSocketRouter extends AbstractRouter {
|
|
|
30
30
|
/** 停止检测计时器 */
|
|
31
31
|
private OnStopCheckTimer;
|
|
32
32
|
/** 鉴权处理 */
|
|
33
|
-
abstract OnCheck(server: Server, url: URL): Promise<
|
|
33
|
+
abstract OnCheck(server: Server, url: URL): Promise<CheckResult>;
|
|
34
34
|
/** 连接 */
|
|
35
|
-
abstract OnConnect(server: Server, client: WebSocketClient): Promise<void>;
|
|
35
|
+
abstract OnConnect(server: Server, checkResult: CheckResult, client: WebSocketClient): Promise<void>;
|
|
36
36
|
/** 断开 */
|
|
37
|
-
abstract OnDisconnect(server: Server, client: WebSocketClient): Promise<void>;
|
|
37
|
+
abstract OnDisconnect(server: Server, checkResult: CheckResult, client: WebSocketClient): Promise<void>;
|
|
38
38
|
/** 消息 */
|
|
39
|
-
abstract OnMessage(server: Server, client: WebSocketClient, data: string): Promise<void>;
|
|
39
|
+
abstract OnMessage(server: Server, checkResult: CheckResult, client: WebSocketClient, data: string): Promise<void>;
|
|
40
40
|
OnGetServerHostPortPath(): string;
|
|
41
41
|
OnDestroy(): void;
|
|
42
42
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"WebSocketRouter.d.ts","sourceRoot":"","sources":["../../../src/module/websocket/WebSocketRouter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,MAAM,CAAC;AACvC,OAAO,KAAK,EAAE,MAAM,IAAI,CAAC;AACzB,OAAO,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"WebSocketRouter.d.ts","sourceRoot":"","sources":["../../../src/module/websocket/WebSocketRouter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,MAAM,CAAC;AACvC,OAAO,KAAK,EAAE,MAAM,IAAI,CAAC;AACzB,OAAO,EAAE,cAAc,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AACzD,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAEpD,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AAEtC,wBAAwB;AACxB,8BAAsB,eAAgB,SAAQ,cAAc;IAExD,WAAW;IACX,OAAO,CAAC,QAAQ,CAAC,OAAO,CAA+B;IACvD,YAAY;IACZ,OAAO,CAAC,UAAU,CAAiB;IAEnC,WAAW;gBACQ,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM;IAO/C,WAAW;IACE,SAAS,CAAC,SAAS,EAAE,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,eAAe,GAAG,OAAO,CAAC,IAAI,CAAC;IAwBxF,YAAY;IACZ,OAAO,CAAC,WAAW;IAKnB,YAAY;IACL,cAAc,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO;IAK3C,cAAc;IACP,iBAAiB,IAAI,IAAI;IAKhC,YAAY;IACL,WAAW,CAAC,GAAG,EAAE,MAAM,GAAG,eAAe;IAIhD,kBAAkB;IACX,yBAAyB,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,eAAe;IAS7E,cAAc;IACP,YAAY,IAAI,KAAK,CAAC,eAAe,CAAC;IAI7C,cAAc;IACd,OAAO,CAAC,iBAAiB;IASzB,cAAc;IACd,OAAO,CAAC,gBAAgB;IAMxB,WAAW;aACK,OAAO,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,GAAG,GAAG,OAAO,CAAC,WAAW,CAAC;IACvE,SAAS;aACO,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,EAAE,eAAe,GAAG,OAAO,CAAC,IAAI,CAAC;IAC3G,SAAS;aACO,YAAY,CAAC,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,EAAE,eAAe,GAAG,OAAO,CAAC,IAAI,CAAC;IAC9G,SAAS;aACO,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,EAAE,eAAe,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAClH,uBAAuB,IAAI,MAAM;IAKjC,SAAS,IAAI,IAAI;CAO3B"}
|
|
@@ -27,18 +27,18 @@ class WebSocketRouter extends base_1.AbstractRouter {
|
|
|
27
27
|
// 鉴权处理
|
|
28
28
|
const host = request.headers.host || 'localhost';
|
|
29
29
|
const url = new URL(request.url || '', `ws://${host}`);
|
|
30
|
-
const
|
|
31
|
-
if (!
|
|
30
|
+
const result = await this.OnCheck(this.server, url);
|
|
31
|
+
if (null == result || !result.valid) {
|
|
32
32
|
websocket.close(utility_1.NetworkUtility.WSCloseCode.AUTH_FAILED, "鉴权处理失败,参数有误!");
|
|
33
33
|
this.logError(`鉴权处理失败,参数有误!`);
|
|
34
34
|
return;
|
|
35
35
|
}
|
|
36
36
|
// 添加客户端
|
|
37
|
-
this.OnAddClient(key, url, websocket, request);
|
|
37
|
+
this.OnAddClient(key, url, websocket, request, result);
|
|
38
38
|
}
|
|
39
39
|
/** 添加客户端 */
|
|
40
|
-
OnAddClient(key, url, websocket, request) {
|
|
41
|
-
const client = new WebSocketClient_1.WebSocketClient(this.server, this, key, url, websocket, request);
|
|
40
|
+
OnAddClient(key, url, websocket, request, checkResult) {
|
|
41
|
+
const client = new WebSocketClient_1.WebSocketClient(this.server, this, key, url, websocket, request, checkResult);
|
|
42
42
|
this.clients.set(key, client);
|
|
43
43
|
}
|
|
44
44
|
/** 移除客户端 */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"WebSocketRouter.js","sourceRoot":"","sources":["../../../src/module/websocket/WebSocketRouter.ts"],"names":[],"mappings":";;;AAEA,
|
|
1
|
+
{"version":3,"file":"WebSocketRouter.js","sourceRoot":"","sources":["../../../src/module/websocket/WebSocketRouter.ts"],"names":[],"mappings":"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"}
|