knight-server 1.0.11 → 1.0.12

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/Server.d.ts.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"Server.d.ts","sourceRoot":"","sources":["../src/Server.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,cAAc,EAAE,cAAc,EAAE,UAAU,EAAE,UAAU,EAAE,eAAe,EAAE,eAAe,EAAE,MAAM,UAAU,CAAC;AAGpH,UAAU;AACV,qBAAa,MAAM;IAEf,WAAW;IACX,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAS;IAChC,WAAkB,QAAQ,WAA+F;IACzH,WAAW;IACJ,MAAM,EAAE,YAAY,CAAC;IAC5B,gBAAgB;IAChB,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAsB;IAC9C,YAAY;IACZ,SAAgB,QAAQ,EAAE,cAAc,CAAC;IACzC,aAAa;IACb,SAAgB,IAAI,EAAE,UAAU,CAAC;IACjC,kBAAkB;IAClB,SAAgB,SAAS,EAAE,eAAe,CAAC;IAC3C,WAAW;IACX,OAAO,CAAC,KAAK,CAAkB;IAE/B,WAAW;IACX,OAAO;IAaP,WAAW;IACE,OAAO,CAAC,MAAM,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC;IAYzD,WAAW;IACE,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC;IAQpC,eAAe;YACD,YAAY;CAK7B;AACD,YAAY;AACZ,MAAM,WAAW,YAAY;IAEzB,YAAY;IACZ,QAAQ,EAAE,cAAc,CAAC;IACzB,aAAa;IACb,IAAI,EAAE,UAAU,CAAC;IACjB,kBAAkB;IAClB,SAAS,EAAE,eAAe,CAAC;IAE3B,WAAW;IACX,UAAU,CAAC,EAAE,MAAM,CAAC;CACvB"}
1
+ {"version":3,"file":"Server.d.ts","sourceRoot":"","sources":["../src/Server.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,cAAc,EAAE,cAAc,EAAE,UAAU,EAAE,UAAU,EAAE,eAAe,EAAE,eAAe,EAAE,MAAM,UAAU,CAAC;AAGpH,UAAU;AACV,qBAAa,MAAM;IAEf,WAAW;IACX,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAS;IAChC,WAAkB,QAAQ,WAA+F;IACzH,WAAW;IACJ,MAAM,EAAE,YAAY,CAAC;IAC5B,gBAAgB;IAChB,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAsB;IAC9C,YAAY;IACZ,SAAgB,QAAQ,EAAE,cAAc,CAAC;IACzC,aAAa;IACb,SAAgB,IAAI,EAAE,UAAU,CAAC;IACjC,kBAAkB;IAClB,SAAgB,SAAS,EAAE,eAAe,CAAC;IAC3C,WAAW;IACX,OAAO,CAAC,KAAK,CAAkB;IAE/B,WAAW;IACX,OAAO;IAaP,WAAW;IACE,OAAO,CAAC,MAAM,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC;IAYzD,WAAW;IACE,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC;IAQpC,eAAe;YACD,YAAY;CAK7B;AACD,YAAY;AACZ,MAAM,WAAW,YAAY;IAEzB,YAAY;IACZ,QAAQ,EAAE,cAAc,CAAC;IACzB,aAAa;IACb,IAAI,EAAE,UAAU,CAAC;IACjB,kBAAkB;IAClB,SAAS,EAAE,eAAe,CAAC;IAE3B,WAAW;IACX,UAAU,CAAC,EAAE,MAAM,CAAC;CAEvB"}
package/Server.js CHANGED
@@ -53,8 +53,8 @@ class Server {
53
53
  }
54
54
  /** 自动获取服务地址 */
55
55
  async OnServerHost() {
56
- // return await NetworkUtility.getPublicIp();
57
- return utility_1.NetworkUtility.getLocalIp();
56
+ return await utility_1.NetworkUtility.getPublicIp();
57
+ // return NetworkUtility.getLocalIp();
58
58
  }
59
59
  }
60
60
  exports.Server = Server;
package/Server.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"Server.js","sourceRoot":"","sources":["../src/Server.ts"],"names":[],"mappings":";;;;;;AAAA,sDAAkC;AAClC,gDAAwB;AACxB,qCAAoH;AACpH,uCAA2C;AAE3C,UAAU;AACV,MAAa,MAAM;IAIR,MAAM,KAAK,QAAQ,KAAK,IAAI,IAAI,IAAI,MAAM,CAAC,QAAQ,EAAE,CAAC;QAAC,MAAM,CAAC,QAAQ,GAAG,IAAI,MAAM,EAAE,CAAC;IAAC,CAAC,CAAC,OAAO,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC;IAAA,CAAC;IAc1H,WAAW;IACX;QAJA,WAAW;QACH,UAAK,GAAY,KAAK,CAAC;QAK3B,OAAO;QACP,MAAM,OAAO,GAAG,IAAA,iBAAW,GAAE,CAAC;QAC9B,OAAO,CAAC,GAAG,CAAC,IAAA,cAAI,GAAE,CAAC,CAAC;QACpB,OAAO,CAAC,GAAG,CAAC,iBAAW,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC;QACjD,OAAO,CAAC,GAAG,CAAC,iBAAW,CAAC,UAAU,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC;QACvE,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,OAAO;QACP,IAAI,CAAC,QAAQ,GAAG,IAAI,uBAAc,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;QAClD,IAAI,CAAC,IAAI,GAAG,IAAI,mBAAU,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;QAC1C,IAAI,CAAC,SAAS,GAAG,IAAI,wBAAe,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;IACxD,CAAC;IACD,WAAW;IACJ,KAAK,CAAC,OAAO,CAAC,MAAoB;QAErC,SAAS;QACT,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;YAAC,OAAO;QAAC,CAAC;QAC3B,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,YAAY,EAAE,CAAC;QAC7C,MAAM,CAAC,UAAU,GAAG,UAAU,CAAC;QAC/B,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,MAAM,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;QAC7C,MAAM,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QACrC,MAAM,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;QAC/C,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC;IACtB,CAAC;IACD,WAAW;IACJ,KAAK,CAAC,MAAM;QAEf,IAAI,CAAC,OAAO,CAAC,kBAAkB,EAAE,CAAC;QAClC,MAAM,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC;QAC7B,MAAM,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;QACzB,MAAM,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,CAAC;QAC9B,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;IACvB,CAAC;IACD,eAAe;IACP,KAAK,CAAC,YAAY;QAEtB,6CAA6C;QAC7C,OAAO,wBAAc,CAAC,UAAU,EAAE,CAAC;IACvC,CAAC;CACJ;AA5DD,wBA4DC"}
1
+ {"version":3,"file":"Server.js","sourceRoot":"","sources":["../src/Server.ts"],"names":[],"mappings":";;;;;;AAAA,sDAAkC;AAClC,gDAAwB;AACxB,qCAAoH;AACpH,uCAA2C;AAE3C,UAAU;AACV,MAAa,MAAM;IAIR,MAAM,KAAK,QAAQ,KAAK,IAAI,IAAI,IAAI,MAAM,CAAC,QAAQ,EAAE,CAAC;QAAC,MAAM,CAAC,QAAQ,GAAG,IAAI,MAAM,EAAE,CAAC;IAAC,CAAC,CAAC,OAAO,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC;IAAA,CAAC;IAc1H,WAAW;IACX;QAJA,WAAW;QACH,UAAK,GAAY,KAAK,CAAC;QAK3B,OAAO;QACP,MAAM,OAAO,GAAG,IAAA,iBAAW,GAAE,CAAC;QAC9B,OAAO,CAAC,GAAG,CAAC,IAAA,cAAI,GAAE,CAAC,CAAC;QACpB,OAAO,CAAC,GAAG,CAAC,iBAAW,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC;QACjD,OAAO,CAAC,GAAG,CAAC,iBAAW,CAAC,UAAU,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC;QACvE,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,OAAO;QACP,IAAI,CAAC,QAAQ,GAAG,IAAI,uBAAc,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;QAClD,IAAI,CAAC,IAAI,GAAG,IAAI,mBAAU,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;QAC1C,IAAI,CAAC,SAAS,GAAG,IAAI,wBAAe,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;IACxD,CAAC;IACD,WAAW;IACJ,KAAK,CAAC,OAAO,CAAC,MAAoB;QAErC,SAAS;QACT,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;YAAC,OAAO;QAAC,CAAC;QAC3B,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,YAAY,EAAE,CAAC;QAC7C,MAAM,CAAC,UAAU,GAAG,UAAU,CAAC;QAC/B,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,MAAM,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;QAC7C,MAAM,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QACrC,MAAM,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;QAC/C,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC;IACtB,CAAC;IACD,WAAW;IACJ,KAAK,CAAC,MAAM;QAEf,IAAI,CAAC,OAAO,CAAC,kBAAkB,EAAE,CAAC;QAClC,MAAM,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC;QAC7B,MAAM,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;QACzB,MAAM,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,CAAC;QAC9B,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;IACvB,CAAC;IACD,eAAe;IACP,KAAK,CAAC,YAAY;QAEtB,OAAO,MAAM,wBAAc,CAAC,WAAW,EAAE,CAAC;QAC1C,sCAAsC;IAC1C,CAAC;CACJ;AA5DD,wBA4DC"}
@@ -1 +1 @@
1
- {"version":3,"file":"AbstractModule.d.ts","sourceRoot":"","sources":["../../src/base/AbstractModule.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,2BAA2B,CAAC;AACpD,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AACnC,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAE,cAAc,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAE9D,aAAa;AACb,8BAAsB,cAAc,CAAC,CAAC,SAAS,YAAY,EAAE,CAAC,SAAS,cAAc,CAAE,SAAQ,cAAc;IAEzG,gBAAgB;IAChB,SAAS,CAAC,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC;IACpC,WAAW;IACX,SAAS,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC;IAC7B,UAAU;IACV,SAAS,CAAC,QAAQ,CAAC,OAAO,EAAE,GAAG,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;IAE3C,WAAW;gBACQ,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO;IAMnD,SAAS;aACO,OAAO,CAAC,MAAM,EAAE,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;IACjD,SAAS;aACO,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC;IACvC,aAAa;IACN,eAAe,IAAI,MAAM;IAIhC,eAAe;IACR,YAAY,IAAI,GAAG,CAAC,MAAM,EAAE,CAAC,CAAC;IAIrC,gBAAgB;IACT,eAAe,IAAI,KAAK,CAAC,MAAM,CAAC;IAIvC,qBAAqB;IACd,uBAAuB,IAAI,KAAK,CAAC,MAAM,CAAC;IAI/C,eAAe;IACR,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,CAAC;IAKnC,WAAW;aACK,cAAc,CAAC,UAAU,EAAE,UAAU,GAAG,CAAC;IACzD,WAAW;aACK,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO;IAE9C,SAAS,IAAI,IAAI;CAO3B;AACD,WAAW;AACX,MAAM,WAAW,YAAY;CAG5B"}
1
+ {"version":3,"file":"AbstractModule.d.ts","sourceRoot":"","sources":["../../src/base/AbstractModule.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,2BAA2B,CAAC;AACpD,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AACnC,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAE,cAAc,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAE9D,aAAa;AACb,8BAAsB,cAAc,CAAC,CAAC,SAAS,YAAY,EAAE,CAAC,SAAS,cAAc,CAAE,SAAQ,cAAc;IAEzG,gBAAgB;IAChB,SAAS,CAAC,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC;IACpC,WAAW;IACX,SAAS,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC;IAC7B,UAAU;IACV,SAAS,CAAC,QAAQ,CAAC,OAAO,EAAE,GAAG,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;IAE3C,WAAW;gBACQ,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO;IAMnD,SAAS;aACO,OAAO,CAAC,MAAM,EAAE,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;IACjD,SAAS;aACO,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC;IACvC,aAAa;IACN,eAAe,IAAI,MAAM;IAIhC,eAAe;IACR,YAAY,IAAI,GAAG,CAAC,MAAM,EAAE,CAAC,CAAC;IAIrC,gBAAgB;IACT,eAAe,IAAI,KAAK,CAAC,MAAM,CAAC;IAIvC,qBAAqB;IACd,uBAAuB,IAAI,KAAK,CAAC,MAAM,CAAC;IAI/C,eAAe;IACR,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,CAAC;IAKnC,WAAW;aACK,cAAc,CAAC,UAAU,EAAE,UAAU,GAAG,CAAC;IACzD,WAAW;aACK,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO;IAE9C,SAAS,IAAI,IAAI;CAQ3B;AACD,WAAW;AACX,MAAM,WAAW,YAAY;CAG5B"}
@@ -28,13 +28,16 @@ class AbstarctModule extends AbstractObject_1.AbstractObject {
28
28
  }
29
29
  /** 通过路径获取路由 */
30
30
  OnGetRouter(path) {
31
- if (this.routers.has(path)) {
31
+ if (!this.routers.has(path)) {
32
32
  return null;
33
33
  }
34
34
  return this.routers.get(path);
35
35
  }
36
36
  OnDestroy() {
37
37
  super.OnDestroy();
38
+ for (const router of this.routers.values()) {
39
+ router.OnDestroy();
40
+ }
38
41
  this.routers.clear();
39
42
  this.OnStop();
40
43
  }
@@ -1 +1 @@
1
- {"version":3,"file":"AbstractModule.js","sourceRoot":"","sources":["../../src/base/AbstractModule.ts"],"names":[],"mappings":";;;AAEA,qDAAkD;AAGlD,aAAa;AACb,MAAsB,cAAiE,SAAQ,+BAAc;IASzG,WAAW;IACX,YAAmB,MAAc,EAAE,OAAgB;QAE/C,KAAK,CAAC,MAAM,CAAC,CAAC;QACd,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,IAAI,CAAC,OAAO,GAAG,IAAI,GAAG,EAAa,CAAC;IACxC,CAAC;IAKD,aAAa;IACN,eAAe;QAElB,OAAO,IAAI,CAAC,MAAM,EAAE,MAAM,EAAE,UAAU,IAAI,EAAE,CAAC;IACjD,CAAC;IACD,eAAe;IACR,YAAY;QAEf,OAAO,IAAI,CAAC,OAAO,CAAC;IACxB,CAAC;IACD,gBAAgB;IACT,eAAe;QAElB,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC;IAC3D,CAAC;IACD,qBAAqB;IACd,uBAAuB;QAE1B,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,eAAe,EAAE,GAAG,GAAG,CAAC,CAAC;IACpF,CAAC;IACD,eAAe;IACR,WAAW,CAAC,IAAY;QAE3B,IAAI,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC;YAAC,OAAO,IAAI,CAAC;QAAC,CAAC;QAC5C,OAAO,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IAClC,CAAC;IAMM,SAAS;QAEZ,KAAK,CAAC,SAAS,EAAE,CAAC;QAClB,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC;QACrB,IAAI,CAAC,MAAM,EAAE,CAAC;IAClB,CAAC;CAEJ;AA1DD,wCA0DC"}
1
+ {"version":3,"file":"AbstractModule.js","sourceRoot":"","sources":["../../src/base/AbstractModule.ts"],"names":[],"mappings":";;;AAEA,qDAAkD;AAGlD,aAAa;AACb,MAAsB,cAAiE,SAAQ,+BAAc;IASzG,WAAW;IACX,YAAmB,MAAc,EAAE,OAAgB;QAE/C,KAAK,CAAC,MAAM,CAAC,CAAC;QACd,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,IAAI,CAAC,OAAO,GAAG,IAAI,GAAG,EAAa,CAAC;IACxC,CAAC;IAKD,aAAa;IACN,eAAe;QAElB,OAAO,IAAI,CAAC,MAAM,EAAE,MAAM,EAAE,UAAU,IAAI,EAAE,CAAC;IACjD,CAAC;IACD,eAAe;IACR,YAAY;QAEf,OAAO,IAAI,CAAC,OAAO,CAAC;IACxB,CAAC;IACD,gBAAgB;IACT,eAAe;QAElB,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC;IAC3D,CAAC;IACD,qBAAqB;IACd,uBAAuB;QAE1B,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,eAAe,EAAE,GAAG,GAAG,CAAC,CAAC;IACpF,CAAC;IACD,eAAe;IACR,WAAW,CAAC,IAAY;QAE3B,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC;YAAC,OAAO,IAAI,CAAC;QAAC,CAAC;QAC7C,OAAO,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IAClC,CAAC;IAMM,SAAS;QAEZ,KAAK,CAAC,SAAS,EAAE,CAAC;QAClB,KAAK,MAAM,MAAM,IAAI,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC;YAAC,MAAM,CAAC,SAAS,EAAE,CAAC;QAAC,CAAC;QACnE,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC;QACrB,IAAI,CAAC,MAAM,EAAE,CAAC;IAClB,CAAC;CAEJ;AA3DD,wCA2DC"}
@@ -14,7 +14,21 @@ export declare class DataBaseModule extends AbstarctModule<DataBaseConfig, DataB
14
14
  OnStop(): Promise<void>;
15
15
  OnRegistRouter(routerData: RouterData): DataBaseRouter;
16
16
  OnDegistRouter(path: string): boolean;
17
- OnDestroy(): void;
17
+ /**
18
+ * 将用户传入的表名规范化为路由 key 格式
19
+ * "users" → "/users",与 @OnRegister 装饰器的规范化一致
20
+ */
21
+ private normalizeTableKey;
22
+ /** 获取表对应的路由 */
23
+ private getRouter;
24
+ /** 插入前钩子分发 */
25
+ private hookBeforeInsert;
26
+ /** 更新前钩子分发 */
27
+ private hookBeforeUpdate;
28
+ /** 删除前钩子分发 */
29
+ private hookBeforeDelete;
30
+ /** 查询后钩子分发 */
31
+ private hookAfterSelect;
18
32
  /**
19
33
  * 执行SQL查询(基础方法)
20
34
  * @param sql SQL语句(支持 ? 占位符)
@@ -100,13 +114,13 @@ export declare class DataBaseModule extends AbstarctModule<DataBaseConfig, DataB
100
114
  pageSize?: number;
101
115
  }>;
102
116
  /**
103
- * 执行自定义SQL(完全控制)
117
+ * 执行自定义SQL(完全控制,绕过业务钩子)
104
118
  * @param sql SQL语句
105
119
  * @param params 参数
106
120
  */
107
121
  query<T = any>(sql: string, params?: any[]): Promise<QueryResult<T>>;
108
122
  /**
109
- * 执行事务
123
+ * 执行事务(绕过业务钩子)
110
124
  * @param callback 事务回调函数,返回结果或Promise
111
125
  */
112
126
  transaction<T>(callback: (connection: MYSQL.PoolConnection) => Promise<T>): Promise<QueryResult<T>>;
@@ -1 +1 @@
1
- {"version":3,"file":"DataBaseModule.d.ts","sourceRoot":"","sources":["../../../src/module/database/DataBaseModule.ts"],"names":[],"mappings":"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"}
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;IAEzB,WAAW;gBACQ,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO;IAItC,OAAO,CAAC,MAAM,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC;IAe9C,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC;IAI7B,cAAc,CAAC,UAAU,EAAE,UAAU,GAAG,cAAc;IAYtD,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO;IAW5C;;;OAGG;IACH,OAAO,CAAC,iBAAiB;IAIzB,eAAe;IACf,OAAO,CAAC,SAAS;IAIjB,cAAc;YACA,gBAAgB;IAM9B,cAAc;YACA,gBAAgB;IAM9B,cAAc;YACA,gBAAgB;IAM9B,cAAc;YACA,eAAe;IAS7B;;;;;OAKG;YACW,YAAY;IAmB1B;;;;;OAKG;IACU,IAAI,CAAC,CAAC,GAAG,GAAG,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,EAAE,MAAM,GAAE,GAAG,EAAO,GAAG,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC;IAuBtG;;;;;OAKG;IACU,OAAO,CAAC,CAAC,GAAG,GAAG,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,GAAE,GAAG,EAAO,GAAG,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC;IAsBxG;;;;;OAKG;IACU,QAAQ,CAAC,CAAC,GAAG,GAAG,EAAE,KAAK,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,GAAG,MAAM,EAAE,OAAO,GAAE,MAAa,GAAG,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC;IAOnH;;;;OAIG;IACU,MAAM,CAAC,CAAC,SAAS,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,GAAG,OAAO,CAAC,WAAW,CAAC;IAiCnF;;;;OAIG;IACU,WAAW,CAAC,CAAC,SAAS,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC,EAAE,GAAG,OAAO,CAAC,WAAW,CAAC;IAuC/F;;;;;;OAMG;IACU,MAAM,CAAC,CAAC,SAAS,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,WAAW,GAAE,GAAG,EAAO,GAAG,OAAO,CAAC,WAAW,CAAC;IAgC3H;;;;;;OAMG;IACU,UAAU,CAAC,CAAC,SAAS,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,GAAG,MAAM,EAAE,IAAI,EAAE,CAAC,EAAE,OAAO,GAAE,MAAa,GAAG,OAAO,CAAC,WAAW,CAAC;IAOpI;;;;;OAKG;IACU,MAAM,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,GAAE,GAAG,EAAO,GAAG,OAAO,CAAC,WAAW,CAAC;IA2B3F;;;;;OAKG;IACU,UAAU,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,GAAG,MAAM,EAAE,OAAO,GAAE,MAAa,GAAG,OAAO,CAAC,WAAW,CAAC;IAOzG;;;;;;;;OAQG;IACU,QAAQ,CAAC,CAAC,GAAG,GAAG,EACzB,KAAK,EAAE,MAAM,EACb,IAAI,GAAE,MAAU,EAChB,QAAQ,GAAE,MAAW,EACrB,KAAK,CAAC,EAAE,MAAM,EACd,MAAM,GAAE,GAAG,EAAO,EAClB,OAAO,GAAE,MAAkB,GAC5B,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC,GAAG;QAAE,KAAK,CAAC,EAAE,MAAM,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IAiCjF;;;;OAIG;IACU,KAAK,CAAC,CAAC,GAAG,GAAG,EAAE,GAAG,EAAE,MAAM,EAAE,MAAM,GAAE,GAAG,EAAO,GAAG,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC;IAqBrF;;;OAGG;IACU,WAAW,CAAC,CAAC,EAAE,QAAQ,EAAE,CAAC,UAAU,EAAE,KAAK,CAAC,cAAc,KAAK,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC;CA8BnH;AACD,cAAc;AACd,MAAM,WAAW,cAAe,SAAQ,YAAY;IAEhD,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,kBAAkB,EAAE,OAAO,CAAC;IAC5B,eAAe,EAAE,MAAM,CAAC;IACxB,UAAU,EAAE,MAAM,CAAC;IACnB,iBAAiB,EAAE,MAAM,CAAC;CAC7B;AACD,aAAa;AACb,MAAM,WAAW,WAAW,CAAC,CAAC,GAAG,GAAG;IAEhC,OAAO,EAAE,OAAO,CAAC;IACjB,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC;IACX,IAAI,CAAC,EAAE,CAAC,CAAC;IACT,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,GAAG,CAAC,EAAE,GAAG,CAAC;CACb"}
@@ -37,6 +37,7 @@ exports.DataBaseModule = void 0;
37
37
  const MYSQL = __importStar(require("mysql2/promise"));
38
38
  const base_1 = require("../../base");
39
39
  const utility_1 = require("../../utility");
40
+ const DataBaseRouter_1 = require("./DataBaseRouter");
40
41
  /** 数据库模块 */
41
42
  class DataBaseModule extends base_1.AbstarctModule {
42
43
  /** 构造函数 */
@@ -48,6 +49,11 @@ class DataBaseModule extends base_1.AbstarctModule {
48
49
  this.pool = MYSQL.createPool(config);
49
50
  const connection = await this.pool.getConnection();
50
51
  connection.release();
52
+ // 注册数据库路由
53
+ const routerRegistry = base_1.RouteRegistry.filter(routerData => routerData.type.prototype instanceof DataBaseRouter_1.DataBaseRouter);
54
+ for (const routerData of routerRegistry) {
55
+ this.OnRegistRouter(routerData);
56
+ }
51
57
  // 智能同步表格
52
58
  const table = new utility_1.DatabaseUtility.SmartTable(this.pool);
53
59
  const result = await table.syncAllFromDir(config.tableRelativePath);
@@ -61,14 +67,72 @@ class DataBaseModule extends base_1.AbstarctModule {
61
67
  await this.pool?.end();
62
68
  }
63
69
  OnRegistRouter(routerData) {
64
- return null;
70
+ if (null == routerData) {
71
+ this.logError("路由数据为空");
72
+ return null;
73
+ }
74
+ const path = routerData.path;
75
+ const type = routerData.type;
76
+ const name = routerData.type.name;
77
+ if (this.routers.has(path)) {
78
+ this.logError(`重复注册 ${path} 路由`);
79
+ return null;
80
+ }
81
+ const router = new type(this.server, path);
82
+ this.routers.set(path, router);
83
+ this.log(`路由注册 ${name} - ${path}`);
84
+ return router;
65
85
  }
66
86
  OnDegistRouter(path) {
87
+ if (!this.routers.has(path)) {
88
+ this.logError(path + " 路由数据不存在");
89
+ return false;
90
+ }
91
+ const router = this.routers.get(path);
92
+ this.routers.delete(path);
93
+ router.OnDestroy();
94
+ this.log(`路由注销 - ${path}`);
67
95
  return true;
68
96
  }
69
- OnDestroy() {
70
- super.OnDestroy();
71
- this.OnStop();
97
+ // ==================== 内部工具方法 ====================
98
+ /**
99
+ * 将用户传入的表名规范化为路由 key 格式
100
+ * "users" → "/users",与 @OnRegister 装饰器的规范化一致
101
+ */
102
+ normalizeTableKey(table) {
103
+ return table.startsWith('/') ? table.toLowerCase() : '/' + table.toLowerCase();
104
+ }
105
+ /** 获取表对应的路由 */
106
+ getRouter(table) {
107
+ return this.routers.get(this.normalizeTableKey(table));
108
+ }
109
+ /** 插入前钩子分发 */
110
+ async hookBeforeInsert(table, data) {
111
+ const router = this.getRouter(table);
112
+ if (!router)
113
+ return { proceed: true, data };
114
+ return await router.OnBeforeInsert(data);
115
+ }
116
+ /** 更新前钩子分发 */
117
+ async hookBeforeUpdate(table, data, where, params) {
118
+ const router = this.getRouter(table);
119
+ if (!router)
120
+ return { proceed: true, data };
121
+ return await router.OnBeforeUpdate(data, where, params);
122
+ }
123
+ /** 删除前钩子分发 */
124
+ async hookBeforeDelete(table, where, params) {
125
+ const router = this.getRouter(table);
126
+ if (!router)
127
+ return { proceed: true };
128
+ return await router.OnBeforeDelete(where, params);
129
+ }
130
+ /** 查询后钩子分发 */
131
+ async hookAfterSelect(table, rows) {
132
+ const router = this.getRouter(table);
133
+ if (!router)
134
+ return rows;
135
+ return await router.OnAfterSelect(rows);
72
136
  }
73
137
  // ==================== 基础查询方法 ====================
74
138
  /**
@@ -103,9 +167,10 @@ class DataBaseModule extends base_1.AbstarctModule {
103
167
  ? `SELECT * FROM \`${table}\` WHERE ${where}`
104
168
  : `SELECT * FROM \`${table}\``;
105
169
  const [rows] = await this.executeQuery(sql, params);
170
+ const data = await this.hookAfterSelect(table, rows);
106
171
  return {
107
172
  success: true,
108
- data: rows,
173
+ data: data,
109
174
  raw: rows
110
175
  };
111
176
  }
@@ -126,10 +191,11 @@ class DataBaseModule extends base_1.AbstarctModule {
126
191
  try {
127
192
  const sql = `SELECT * FROM \`${table}\` WHERE ${where} LIMIT 1`;
128
193
  const [rows] = await this.executeQuery(sql, params);
194
+ const data = await this.hookAfterSelect(table, rows);
129
195
  return {
130
196
  success: true,
131
- item: rows[0],
132
- data: rows,
197
+ item: data[0],
198
+ data: data,
133
199
  raw: rows
134
200
  };
135
201
  }
@@ -156,6 +222,12 @@ class DataBaseModule extends base_1.AbstarctModule {
156
222
  * @param data 要插入的数据对象
157
223
  */
158
224
  async insert(table, data) {
225
+ // 插入前钩子
226
+ const hookResult = await this.hookBeforeInsert(table, data);
227
+ if (!hookResult.proceed) {
228
+ return { success: false, error: hookResult.error || '插入被业务逻辑阻止' };
229
+ }
230
+ data = (hookResult.data || data);
159
231
  try {
160
232
  const keys = Object.keys(data).map(key => `\`${key}\``).join(', ');
161
233
  const placeholders = Object.keys(data).map(() => '?').join(', ');
@@ -184,6 +256,11 @@ class DataBaseModule extends base_1.AbstarctModule {
184
256
  if (dataArray.length === 0) {
185
257
  return { success: false, error: '没有数据可插入' };
186
258
  }
259
+ // 对首元素做业务拦截(批量场景不做逐条校验)
260
+ const hookResult = await this.hookBeforeInsert(table, dataArray[0]);
261
+ if (!hookResult.proceed) {
262
+ return { success: false, error: hookResult.error || '插入被业务逻辑阻止' };
263
+ }
187
264
  try {
188
265
  const keys = Object.keys(dataArray[0]).map(key => `\`${key}\``).join(', ');
189
266
  const placeholders = dataArray.map(() => `(${Object.keys(dataArray[0]).map(() => '?').join(', ')})`).join(', ');
@@ -212,6 +289,12 @@ class DataBaseModule extends base_1.AbstarctModule {
212
289
  * @param whereParams 条件参数
213
290
  */
214
291
  async update(table, data, where, whereParams = []) {
292
+ // 更新前钩子
293
+ const hookResult = await this.hookBeforeUpdate(table, data, where, whereParams);
294
+ if (!hookResult.proceed) {
295
+ return { success: false, error: hookResult.error || '更新被业务逻辑阻止' };
296
+ }
297
+ data = (hookResult.data || data);
215
298
  try {
216
299
  const setClause = Object.keys(data).map(key => `\`${key}\` = ?`).join(', ');
217
300
  const setValues = Object.values(data);
@@ -248,6 +331,11 @@ class DataBaseModule extends base_1.AbstarctModule {
248
331
  * @param params 条件参数
249
332
  */
250
333
  async delete(table, where, params = []) {
334
+ // 删除前钩子
335
+ const hookResult = await this.hookBeforeDelete(table, where, params);
336
+ if (!hookResult.proceed) {
337
+ return { success: false, error: hookResult.error || '删除被业务逻辑阻止' };
338
+ }
251
339
  try {
252
340
  const sql = `DELETE FROM \`${table}\` WHERE ${where}`;
253
341
  const [result] = await this.executeQuery(sql, params);
@@ -294,9 +382,10 @@ class DataBaseModule extends base_1.AbstarctModule {
294
382
  ? `SELECT * FROM \`${table}\` WHERE ${where} ORDER BY ${orderBy} LIMIT ${offset}, ${pageSize}`
295
383
  : `SELECT * FROM \`${table}\` ORDER BY ${orderBy} LIMIT ${offset}, ${pageSize}`;
296
384
  const [rows] = await this.executeQuery(dataSql, where ? params : []);
385
+ const data = await this.hookAfterSelect(table, rows);
297
386
  return {
298
387
  success: true,
299
- data: rows,
388
+ data: data,
300
389
  total,
301
390
  page,
302
391
  pageSize
@@ -310,7 +399,7 @@ class DataBaseModule extends base_1.AbstarctModule {
310
399
  }
311
400
  }
312
401
  /**
313
- * 执行自定义SQL(完全控制)
402
+ * 执行自定义SQL(完全控制,绕过业务钩子)
314
403
  * @param sql SQL语句
315
404
  * @param params 参数
316
405
  */
@@ -332,7 +421,7 @@ class DataBaseModule extends base_1.AbstarctModule {
332
421
  }
333
422
  // ==================== 事务操作 ====================
334
423
  /**
335
- * 执行事务
424
+ * 执行事务(绕过业务钩子)
336
425
  * @param callback 事务回调函数,返回结果或Promise
337
426
  */
338
427
  async transaction(callback) {
@@ -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,10 +1,27 @@
1
1
  import { AbstractRouter } from "../../base";
2
2
  import { Server } from "../../Server";
3
- /** 数据库路由 */
4
- export declare class DataBaseRouter extends AbstractRouter {
5
- /** 构造函数 */
3
+ /** Hook 返回结果 */
4
+ export interface HookResult<T = any> {
5
+ /** true 继续执行,false 阻止操作 */
6
+ proceed: boolean;
7
+ /** 经过钩子处理后的数据(仅 insert/update) */
8
+ data?: T;
9
+ /** 阻止操作时的错误信息 */
10
+ error?: string;
11
+ }
12
+ /** 抽象数据库路由(业务逻辑钩子) */
13
+ export declare abstract class DataBaseRouter extends AbstractRouter {
6
14
  constructor(server: Server, path: string);
7
15
  OnCheck(...args: Array<any>): Promise<boolean>;
8
16
  OnHandler(...args: Array<any>): Promise<void>;
17
+ /** 插入前拦截 */
18
+ OnBeforeInsert(data: any): Promise<HookResult>;
19
+ /** 更新前拦截 */
20
+ OnBeforeUpdate(data: any, where: string, params: any[]): Promise<HookResult>;
21
+ /** 删除前拦截 */
22
+ OnBeforeDelete(where: string, params: any[]): Promise<HookResult>;
23
+ /** 查询后拦截 - 对结果集做二次处理 */
24
+ OnAfterSelect(rows: any[]): Promise<any[]>;
25
+ OnDestroy(): void;
9
26
  }
10
27
  //# sourceMappingURL=DataBaseRouter.d.ts.map
@@ -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;AAC5C,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AAEtC,YAAY;AACZ,qBAAa,cAAe,SAAQ,cAAc;IAE9C,WAAW;gBACQ,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM;IAKlC,OAAO,CAAC,GAAG,IAAI,EAAE,KAAK,CAAC,GAAG,CAAC,GAAG,OAAO,CAAC,OAAO,CAAC;IAI9C,SAAS,CAAC,GAAG,IAAI,EAAE,KAAK,CAAC,GAAG,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;CAK7D"}
1
+ {"version":3,"file":"DataBaseRouter.d.ts","sourceRoot":"","sources":["../../../src/module/database/DataBaseRouter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAC5C,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,GAAG,IAAI,EAAE,KAAK,CAAC,GAAG,CAAC,GAAG,OAAO,CAAC,OAAO,CAAC;IAI9C,SAAS,CAAC,GAAG,IAAI,EAAE,KAAK,CAAC,GAAG,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;IAO1D,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"}
@@ -2,16 +2,37 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.DataBaseRouter = void 0;
4
4
  const base_1 = require("../../base");
5
- /** 数据库路由 */
5
+ /** 抽象数据库路由(业务逻辑钩子) */
6
6
  class DataBaseRouter extends base_1.AbstractRouter {
7
- /** 构造函数 */
8
7
  constructor(server, path) {
9
8
  super(server, path);
10
9
  }
10
+ // ======== AbstractRouter 默认实现 ========
11
11
  async OnCheck(...args) {
12
12
  return true;
13
13
  }
14
14
  async OnHandler(...args) {
15
+ // CRUD 由模块分发,本方法保留以备扩展
16
+ }
17
+ // ======== 业务逻辑钩子(默认透传,子类按需覆盖) ========
18
+ /** 插入前拦截 */
19
+ async OnBeforeInsert(data) {
20
+ return { proceed: true, data };
21
+ }
22
+ /** 更新前拦截 */
23
+ async OnBeforeUpdate(data, where, params) {
24
+ return { proceed: true, data };
25
+ }
26
+ /** 删除前拦截 */
27
+ async OnBeforeDelete(where, params) {
28
+ return { proceed: true };
29
+ }
30
+ /** 查询后拦截 - 对结果集做二次处理 */
31
+ async OnAfterSelect(rows) {
32
+ return rows;
33
+ }
34
+ OnDestroy() {
35
+ super.OnDestroy();
15
36
  }
16
37
  }
17
38
  exports.DataBaseRouter = DataBaseRouter;
@@ -1 +1 @@
1
- {"version":3,"file":"DataBaseRouter.js","sourceRoot":"","sources":["../../../src/module/database/DataBaseRouter.ts"],"names":[],"mappings":";;;AAAA,qCAA4C;AAG5C,YAAY;AACZ,MAAa,cAAe,SAAQ,qBAAc;IAE9C,WAAW;IACX,YAAmB,MAAc,EAAE,IAAY;QAE3C,KAAK,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;IACxB,CAAC;IAEM,KAAK,CAAC,OAAO,CAAC,GAAG,IAAgB;QAEpC,OAAO,IAAI,CAAC;IAChB,CAAC;IACM,KAAK,CAAC,SAAS,CAAC,GAAG,IAAgB;IAG1C,CAAC;CAEJ;AAjBD,wCAiBC"}
1
+ {"version":3,"file":"DataBaseRouter.js","sourceRoot":"","sources":["../../../src/module/database/DataBaseRouter.ts"],"names":[],"mappings":";;;AAAA,qCAA4C;AAc5C,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,GAAG,IAAgB;QAEpC,OAAO,IAAI,CAAC;IAChB,CAAC;IACM,KAAK,CAAC,SAAS,CAAC,GAAG,IAAgB;QAEtC,uBAAuB;IAC3B,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;AA7CD,wCA6CC"}
@@ -1 +1 @@
1
- {"version":3,"file":"HttpModule.d.ts","sourceRoot":"","sources":["../../../src/module/http/HttpModule.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,2BAA2B,CAAC;AAGpD,OAAO,EAAE,cAAc,EAAE,UAAU,EAAiB,MAAM,YAAY,CAAC;AACvE,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AAEtC,aAAa;AACb,qBAAa,UAAW,SAAQ,cAAc,CAAC,UAAU,EAAE,UAAU,CAAC;IAElE,SAAS,CAAC,MAAM,EAAE,UAAU,CAAC;IAC7B,eAAe;IACf,OAAO,CAAC,UAAU,CAAc;IAEhC,WAAW;gBACQ,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO;IAItC,OAAO,CAAC,MAAM,EAAE,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC;IAS1C,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC;IAI7B,cAAc,CAAC,UAAU,EAAE,UAAU,GAAG,UAAU;IAalD,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO;IAO5C,aAAa;IACb,OAAO,CAAC,cAAc;CAOzB;AACD,eAAe;AACf,MAAM,WAAW,UAAU;IAIvB,UAAU;IACV,IAAI,EAAE,MAAM,CAAC;CAChB"}
1
+ {"version":3,"file":"HttpModule.d.ts","sourceRoot":"","sources":["../../../src/module/http/HttpModule.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,2BAA2B,CAAC;AAGpD,OAAO,EAAE,cAAc,EAAE,UAAU,EAAiB,MAAM,YAAY,CAAC;AACvE,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AAEtC,aAAa;AACb,qBAAa,UAAW,SAAQ,cAAc,CAAC,UAAU,EAAE,UAAU,CAAC;IAElE,SAAS,CAAC,MAAM,EAAE,UAAU,CAAC;IAC7B,eAAe;IACf,OAAO,CAAC,UAAU,CAAc;IAEhC,WAAW;gBACQ,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO;IAItC,OAAO,CAAC,MAAM,EAAE,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC;IAS1C,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC;IAI7B,cAAc,CAAC,UAAU,EAAE,UAAU,GAAG,UAAU;IAalD,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO;IAsB5C,aAAa;IACb,OAAO,CAAC,cAAc;CAWzB;AACD,eAAe;AACf,MAAM,WAAW,UAAU;IAIvB,UAAU;IACV,IAAI,EAAE,MAAM,CAAC;CAChB"}
@@ -45,11 +45,24 @@ class HttpModule extends base_1.AbstarctModule {
45
45
  this.logError(path + "路由数据不存在");
46
46
  return false;
47
47
  }
48
- const result = this.routers.delete(path);
49
- if (result) {
50
- this.log(`路由注销 - ${path}`);
48
+ const router = this.routers.get(path);
49
+ // Express 路由栈中移除
50
+ const stack = this.express._router?.stack;
51
+ if (stack) {
52
+ try {
53
+ for (let i = stack.length - 1; i >= 0; i--) {
54
+ const layer = stack[i];
55
+ if (layer.route && layer.route.path === path) {
56
+ stack.splice(i, 1);
57
+ }
58
+ }
59
+ }
60
+ catch (error) { }
51
61
  }
52
- return result;
62
+ this.routers.delete(path);
63
+ router.OnDestroy();
64
+ this.log(`路由注销 - ${path}`);
65
+ return true;
53
66
  }
54
67
  /** 代理处理逻辑 */
55
68
  OnProxyHandler(request, response) {
@@ -59,7 +72,10 @@ class HttpModule extends base_1.AbstarctModule {
59
72
  response.status(404).end();
60
73
  return;
61
74
  }
62
- router.OnHandler(request, response);
75
+ router.OnHandler(request, response)?.catch(error => {
76
+ this.logError(`路由处理异常 [${path}]:`, error);
77
+ response.status(500).end();
78
+ });
63
79
  }
64
80
  }
65
81
  exports.HttpModule = HttpModule;
@@ -1 +1 @@
1
- {"version":3,"file":"HttpModule.js","sourceRoot":"","sources":["../../../src/module/http/HttpModule.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"HttpModule.js","sourceRoot":"","sources":["../../../src/module/http/HttpModule.ts"],"names":[],"mappings":"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"}
@@ -15,12 +15,12 @@ export declare class WebSocketClient extends AbstractObject {
15
15
  private readonly websocket;
16
16
  /** 请求消息数据 */
17
17
  private readonly request;
18
+ /** 是否已关闭 */
19
+ private _closed;
18
20
  /** 最后心跳时间戳 */
19
21
  private lastHeartbeatTimeStamp;
20
22
  /** 心跳计时器 */
21
23
  private heartbeatTimer;
22
- /** 心跳超时检测间隔(ms) */
23
- private readonly HEARTBEAT_TIMEOUT_INTERVAL;
24
24
  /** 构造函数 */
25
25
  constructor(server: Server, router: WebSocketRouter, key: string, url: URL, websocket: WS.WebSocket, request: IncomingMessage);
26
26
  /** 更新心跳时间戳 */
@@ -35,8 +35,6 @@ export declare class WebSocketClient extends AbstractObject {
35
35
  private OnWebSocketClose;
36
36
  /** WebSocket错误监听 */
37
37
  private OnWebSocketError;
38
- /** WebSocket升级监听 */
39
- private OnWebSocketUpgrade;
40
38
  /** WebSocket消息监听 */
41
39
  private OnWebSocketMessage;
42
40
  /** WebSocketPing监听 */
@@ -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;AAC5C,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,cAAc;IACd,OAAO,CAAC,sBAAsB,CAAS;IACvC,YAAY;IACZ,OAAO,CAAC,cAAc,CAAiB;IACvC,mBAAmB;IACnB,OAAO,CAAC,QAAQ,CAAC,0BAA0B,CAAS;IAEpD,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;IAkBpI,cAAc;IACP,iBAAiB,IAAI,IAAI;IAIhC,eAAe;IACf,OAAO,CAAC,4BAA4B;IAUpC,eAAe;IACf,OAAO,CAAC,2BAA2B;IAMnC,oBAAoB;IACpB,OAAO,CAAC,eAAe;IAMvB,oBAAoB;IACpB,OAAO,CAAC,gBAAgB;IAOxB,oBAAoB;IACpB,OAAO,CAAC,gBAAgB;IAOxB,oBAAoB;IACpB,OAAO,CAAC,kBAAkB;IAO1B,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;IAQpD,cAAc;IACP,MAAM,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,GAAG,UAAU,GAAG,IAAI;IAI/C,cAAc;IACP,WAAW,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,GAAG,UAAU,EAAE,WAAW,GAAE,OAAe,GAAG,IAAI;IAS3E,SAAS,IAAI,IAAI;CAK3B"}
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;AAC5C,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,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;IAgBpI,cAAc;IACP,iBAAiB,IAAI,IAAI;IAIhC,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,MAAM,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,GAAG,UAAU,GAAG,IAAI;IAI/C,cAAc;IACP,WAAW,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,GAAG,UAAU,EAAE,WAAW,GAAE,OAAe,GAAG,IAAI;IAS3E,SAAS,IAAI,IAAI;CAK3B"}
@@ -7,20 +7,20 @@ class WebSocketClient extends base_1.AbstractObject {
7
7
  /** 构造函数 */
8
8
  constructor(server, router, key, url, websocket, request) {
9
9
  super(server);
10
+ /** 是否已关闭 */
11
+ this._closed = false;
10
12
  this.router = router;
11
13
  this.key = key;
12
14
  this.url = url;
13
15
  this.websocket = websocket;
14
16
  this.request = request;
15
- this.HEARTBEAT_TIMEOUT_INTERVAL = server.websocket.config.heartbeat_timeout_interval;
16
17
  this.websocket.on('close', this.OnWebSocketClose.bind(this));
17
18
  this.websocket.on('error', this.OnWebSocketError.bind(this));
18
- this.websocket.on('upgrade', this.OnWebSocketUpgrade.bind(this));
19
19
  this.websocket.on('message', this.OnWebSocketMessage.bind(this));
20
20
  this.websocket.on('ping', this.OnWebSocketPing.bind(this));
21
21
  this.websocket.on('pong', this.OnWebSocketPong.bind(this));
22
- this.OnWebSocketOpen();
23
22
  this.OnUpdateHeartbeat();
23
+ this.OnWebSocketOpen();
24
24
  }
25
25
  /** 更新心跳时间戳 */
26
26
  OnUpdateHeartbeat() {
@@ -31,13 +31,14 @@ class WebSocketClient extends base_1.AbstractObject {
31
31
  if (this.heartbeatTimer) {
32
32
  return;
33
33
  }
34
+ const interval = this.server.websocket.config.heartbeat_timeout_interval;
34
35
  this.heartbeatTimer = setInterval(() => {
35
36
  const now = Date.now();
36
- if (now - this.lastHeartbeatTimeStamp <= this.HEARTBEAT_TIMEOUT_INTERVAL) {
37
+ if (now - this.lastHeartbeatTimeStamp <= interval) {
37
38
  return;
38
39
  }
39
40
  this.OnClose(1001, "心跳超时");
40
- });
41
+ }, interval);
41
42
  }
42
43
  /** 停止心跳超时检测 */
43
44
  OnStopHeartbeatTimeoutCheck() {
@@ -55,24 +56,25 @@ class WebSocketClient extends base_1.AbstractObject {
55
56
  }
56
57
  /** WebSocket关闭监听 */
57
58
  OnWebSocketClose(code, reason) {
59
+ if (this._closed) {
60
+ return;
61
+ }
62
+ this._closed = true;
58
63
  console.error(`[WebSocket客户端断开] <RemoteAddress> ${this.key} <Code> ${code} <Reason> ${reason.toString()}`);
64
+ this.OnStopHeartbeatTimeoutCheck();
59
65
  this.router.OnDisconnect(this.server, this);
60
66
  this.router.OnRemoveClient(this.key);
61
- this.OnStopHeartbeatTimeoutCheck();
62
67
  }
63
68
  /** WebSocket错误监听 */
64
69
  OnWebSocketError(error) {
70
+ if (this._closed) {
71
+ return;
72
+ }
73
+ this._closed = true;
65
74
  console.log('[WebSocket客户端连接出错]', error);
66
- this.router.OnDisconnect(this.server, this);
67
- this.router.OnRemoveClient(this.key);
68
75
  this.OnStopHeartbeatTimeoutCheck();
69
- }
70
- /** WebSocket升级监听 */
71
- OnWebSocketUpgrade(request) {
72
- console.log('[WebSocket客户端连接升级]', request);
73
76
  this.router.OnDisconnect(this.server, this);
74
77
  this.router.OnRemoveClient(this.key);
75
- this.OnStopHeartbeatTimeoutCheck();
76
78
  }
77
79
  /** WebSocket消息监听 */
78
80
  OnWebSocketMessage(data, isBinary) {
@@ -108,6 +110,13 @@ class WebSocketClient extends base_1.AbstractObject {
108
110
  }
109
111
  /** 关闭客户端 */
110
112
  OnClose(code, reason) {
113
+ if (this._closed) {
114
+ return;
115
+ }
116
+ this._closed = true;
117
+ this.OnStopHeartbeatTimeoutCheck();
118
+ this.router.OnDisconnect(this.server, this);
119
+ this.router.OnRemoveClient(this.key);
111
120
  // 关闭WebSocket连接
112
121
  if (null != code && null != reason) {
113
122
  this.websocket.close(code, reason);
@@ -115,8 +124,6 @@ class WebSocketClient extends base_1.AbstractObject {
115
124
  else {
116
125
  this.websocket.close();
117
126
  }
118
- this.router.OnDisconnect(this.server, this);
119
- this.router.OnRemoveClient(this.key);
120
127
  }
121
128
  /** 客户端发送消息 */
122
129
  OnSend(data) {
@@ -133,8 +140,8 @@ class WebSocketClient extends base_1.AbstractObject {
133
140
  }
134
141
  }
135
142
  OnDestroy() {
136
- super.OnDestroy();
137
143
  this.OnClose();
144
+ super.OnDestroy();
138
145
  }
139
146
  }
140
147
  exports.WebSocketClient = WebSocketClient;
@@ -1 +1 @@
1
- {"version":3,"file":"WebSocketClient.js","sourceRoot":"","sources":["../../../src/module/websocket/WebSocketClient.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"WebSocketClient.js","sourceRoot":"","sources":["../../../src/module/websocket/WebSocketClient.ts"],"names":[],"mappings":"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"}
@@ -13,7 +13,6 @@ export declare class WebSocketModule extends AbstarctModule<WebSocketConfig, Web
13
13
  constructor(server: Server, express: Express);
14
14
  OnStart(config: WebSocketConfig): Promise<void>;
15
15
  OnStop(): Promise<void>;
16
- OnDestroy(): void;
17
16
  OnRegistRouter(routerData: RouterData): WebSocketRouter;
18
17
  OnDegistRouter(path: string): boolean;
19
18
  /** 连接事件 */
@@ -24,5 +23,7 @@ export interface WebSocketConfig {
24
23
  port: number;
25
24
  /** 心跳超时检测间隔 */
26
25
  heartbeat_timeout_interval: number;
26
+ /** 路由闲置超时检测间隔 */
27
+ router_timeout_interval: number;
27
28
  }
28
29
  //# sourceMappingURL=WebSocketModule.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"WebSocketModule.d.ts","sourceRoot":"","sources":["../../../src/module/websocket/WebSocketModule.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,2BAA2B,CAAC;AAGpD,OAAO,EAAE,cAAc,EAAE,UAAU,EAAiB,MAAM,YAAY,CAAC;AACvE,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AAEtC,kBAAkB;AAClB,qBAAa,eAAgB,SAAQ,cAAc,CAAC,eAAe,EAAE,eAAe,CAAC;IAE1E,MAAM,EAAE,eAAe,CAAC;IAC/B,eAAe;IACf,OAAO,CAAC,UAAU,CAAc;IAChC,kBAAkB;IAClB,OAAO,CAAC,eAAe,CAAC,CAAqB;IAE7C,WAAW;gBACQ,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO;IAItC,OAAO,CAAC,MAAM,EAAE,eAAe,GAAG,OAAO,CAAC,IAAI,CAAC;IAY/C,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC;IAK7B,SAAS,IAAI,IAAI;IAKjB,cAAc,CAAC,UAAU,EAAE,UAAU,GAAG,eAAe;IAYvD,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO;IAO5C,WAAW;YACG,cAAc;CAQ/B;AACD,oBAAoB;AACpB,MAAM,WAAW,eAAe;IAG5B,IAAI,EAAE,MAAM,CAAC;IACb,eAAe;IACf,0BAA0B,EAAE,MAAM,CAAC;CACtC"}
1
+ {"version":3,"file":"WebSocketModule.d.ts","sourceRoot":"","sources":["../../../src/module/websocket/WebSocketModule.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,2BAA2B,CAAC;AAGpD,OAAO,EAAE,cAAc,EAAE,UAAU,EAAiB,MAAM,YAAY,CAAC;AACvE,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AAEtC,kBAAkB;AAClB,qBAAa,eAAgB,SAAQ,cAAc,CAAC,eAAe,EAAE,eAAe,CAAC;IAE1E,MAAM,EAAE,eAAe,CAAC;IAC/B,eAAe;IACf,OAAO,CAAC,UAAU,CAAc;IAChC,kBAAkB;IAClB,OAAO,CAAC,eAAe,CAAC,CAAqB;IAE7C,WAAW;gBACQ,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO;IAItC,OAAO,CAAC,MAAM,EAAE,eAAe,GAAG,OAAO,CAAC,IAAI,CAAC;IAY/C,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC;IAK7B,cAAc,CAAC,UAAU,EAAE,UAAU,GAAG,eAAe;IAYvD,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO;IAS5C,WAAW;YACG,cAAc;CAS/B;AACD,oBAAoB;AACpB,MAAM,WAAW,eAAe;IAG5B,IAAI,EAAE,MAAM,CAAC;IACb,eAAe;IACf,0BAA0B,EAAE,MAAM,CAAC;IACnC,iBAAiB;IACjB,uBAAuB,EAAE,MAAM,CAAC;CACnC"}
@@ -64,10 +64,6 @@ class WebSocketModule extends base_1.AbstarctModule {
64
64
  this.websocketServer?.close();
65
65
  this.httpServer?.close();
66
66
  }
67
- OnDestroy() {
68
- super.OnDestroy();
69
- this.OnStop();
70
- }
71
67
  OnRegistRouter(routerData) {
72
68
  if (null == routerData) {
73
69
  this.logError("路由数据为空");
@@ -90,6 +86,8 @@ class WebSocketModule extends base_1.AbstarctModule {
90
86
  this.logError(path + "路由数据不存在,路由注销失败");
91
87
  return false;
92
88
  }
89
+ const router = this.routers.get(path);
90
+ router.OnDestroy();
93
91
  const result = this.routers.delete(path);
94
92
  if (result) {
95
93
  this.log(`路由注销 - ${path}`);
@@ -98,7 +96,8 @@ class WebSocketModule extends base_1.AbstarctModule {
98
96
  }
99
97
  /** 连接事件 */
100
98
  async onConnectEvent(websocket, request) {
101
- const path = request.url;
99
+ const host = request.headers.host || 'localhost';
100
+ const path = new URL(request.url || '', `ws://${host}`).pathname;
102
101
  if (!this.routers.has(path)) {
103
102
  this.logError(path + "路由数据不存在,客户端创建失败");
104
103
  return;
@@ -1 +1 @@
1
- {"version":3,"file":"WebSocketModule.js","sourceRoot":"","sources":["../../../src/module/websocket/WebSocketModule.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"WebSocketModule.js","sourceRoot":"","sources":["../../../src/module/websocket/WebSocketModule.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AACA,gDAA6C;AAC7C,uCAAyB;AACzB,qCAAuE;AACvE,uDAAoD;AAGpD,kBAAkB;AAClB,MAAa,eAAgB,SAAQ,qBAAgD;IAQjF,WAAW;IACX,YAAmB,MAAc,EAAE,OAAgB;QAE/C,KAAK,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC3B,CAAC;IACM,KAAK,CAAC,OAAO,CAAC,MAAuB;QAExC,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,CAAC,UAAU,GAAG,cAAI,CAAC,YAAY,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAClD,IAAI,CAAC,eAAe,GAAG,IAAI,EAAE,CAAC,eAAe,CAAC,EAAE,MAAM,EAAE,IAAI,CAAC,UAAU,EAAE,CAAC,CAAC;QAC3E,IAAI,CAAC,eAAe,CAAC,EAAE,CAAC,YAAY,EAAE,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;QACtE,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QACpC,IAAI,CAAC,OAAO,CAAC,WAAW,IAAI,CAAC,eAAe,EAAE,IAAI,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC;QACjE,OAAO;QACP,MAAM,cAAc,GAAG,oBAAa,CAAC,MAAM,CAAC,UAAU,CAAC,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,SAAS,YAAY,iCAAe,CAAC,CAAC;QAChH,KAAK,MAAM,UAAU,IAAI,cAAc,EAAE,CAAC;YAAC,IAAI,CAAC,cAAc,CAAC,UAAU,CAAC,CAAC;QAAC,CAAC;IACjF,CAAC;IACM,KAAK,CAAC,MAAM;QAEf,IAAI,CAAC,eAAe,EAAE,KAAK,EAAE,CAAC;QAC9B,IAAI,CAAC,UAAU,EAAE,KAAK,EAAE,CAAC;IAC7B,CAAC;IACM,cAAc,CAAC,UAAsB;QAExC,IAAI,IAAI,IAAI,UAAU,EAAE,CAAC;YAAC,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;YAAC,OAAO,IAAI,CAAC;QAAC,CAAC;QACjE,MAAM,IAAI,GAAG,UAAU,CAAC,IAAI,CAAC;QAC7B,MAAM,IAAI,GAAG,UAAU,CAAC,IAAI,CAAC;QAC7B,MAAM,IAAI,GAAG,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC;QAClC,IAAI,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC;YAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,IAAI,KAAK,CAAC,CAAC;YAAC,OAAO,IAAI,CAAC;QAAC,CAAC;QAC7E,MAAM,MAAM,GAAG,IAAI,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAoB,CAAC;QAC9D,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;QAC/B,IAAI,CAAC,GAAG,CAAC,QAAQ,IAAI,MAAM,IAAI,EAAE,CAAC,CAAC;QACnC,OAAO,MAAM,CAAC;IAClB,CAAC;IACM,cAAc,CAAC,IAAY;QAE9B,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC;YAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,GAAG,gBAAgB,CAAC,CAAC;YAAC,OAAO,KAAK,CAAC;QAAC,CAAC;QACtF,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QACtC,MAAM,CAAC,SAAS,EAAE,CAAC;QACnB,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QACzC,IAAI,MAAM,EAAE,CAAC;YAAC,IAAI,CAAC,GAAG,CAAC,UAAU,IAAI,EAAE,CAAC,CAAC;QAAC,CAAC;QAC3C,OAAO,MAAM,CAAC;IAClB,CAAC;IACD,WAAW;IACH,KAAK,CAAC,cAAc,CAAC,SAAuB,EAAE,OAAwB;QAE1E,MAAM,IAAI,GAAG,OAAO,CAAC,OAAO,CAAC,IAAI,IAAI,WAAW,CAAC;QACjD,MAAM,IAAI,GAAG,IAAI,GAAG,CAAC,OAAO,CAAC,GAAG,IAAI,EAAE,EAAE,QAAQ,IAAI,EAAE,CAAC,CAAC,QAAQ,CAAC;QACjE,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC;YAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,GAAG,iBAAiB,CAAC,CAAC;YAAC,OAAO;QAAC,CAAC;QACjF,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QACtC,MAAM,MAAM,EAAE,SAAS,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;IAChD,CAAC;CAEJ;AA7DD,0CA6DC"}
@@ -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;AAC5C,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,cAAc;IACP,YAAY,IAAI,KAAK,CAAC,eAAe,CAAC;IAI7C,cAAc;IACd,OAAO,CAAC,iBAAiB;IAQzB,cAAc;IACd,OAAO,CAAC,gBAAgB;IAKxB,WAAW;aACK,OAAO,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,GAAG,GAAG,OAAO,CAAC,OAAO,CAAC;IACnE,SAAS;aACO,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,eAAe,GAAG,OAAO,CAAC,IAAI,CAAC;IACjF,SAAS;aACO,YAAY,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,eAAe,GAAG,OAAO,CAAC,IAAI,CAAC;IACpF,SAAS;aACO,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,eAAe,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IACxF,SAAS,IAAI,IAAI;CAO3B"}
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;AAC5C,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,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,OAAO,CAAC;IACnE,SAAS;aACO,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,eAAe,GAAG,OAAO,CAAC,IAAI,CAAC;IACjF,SAAS;aACO,YAAY,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,eAAe,GAAG,OAAO,CAAC,IAAI,CAAC;IACpF,SAAS;aACO,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,eAAe,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IACxF,SAAS,IAAI,IAAI;CAO3B"}
@@ -65,12 +65,13 @@ class WebSocketRouter extends base_1.AbstractRouter {
65
65
  }
66
66
  /** 启动检测计时器 */
67
67
  OnStartCheckTimer() {
68
+ const interval = this.server.websocket.config.router_timeout_interval;
68
69
  this.chectTimer = setInterval(() => {
69
70
  if (0 < this.clients.size) {
70
71
  return;
71
72
  }
72
73
  this.server.websocket.OnDegistRouter(this.path);
73
- }, 90000);
74
+ }, interval);
74
75
  }
75
76
  /** 停止检测计时器 */
76
77
  OnStopCheckTimer() {
@@ -78,6 +79,7 @@ class WebSocketRouter extends base_1.AbstractRouter {
78
79
  return;
79
80
  }
80
81
  clearInterval(this.chectTimer);
82
+ this.chectTimer = null;
81
83
  }
82
84
  OnDestroy() {
83
85
  super.OnDestroy();
@@ -1 +1 @@
1
- {"version":3,"file":"WebSocketRouter.js","sourceRoot":"","sources":["../../../src/module/websocket/WebSocketRouter.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"WebSocketRouter.js","sourceRoot":"","sources":["../../../src/module/websocket/WebSocketRouter.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "knight-server",
3
- "version": "1.0.11",
3
+ "version": "1.0.12",
4
4
  "description": "Knight-server服务端架构",
5
5
  "main": "index.js",
6
6
  "scripts": {