knight-server 1.0.14 → 1.0.15
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/module/websocket/WebSocketRouter.js +2 -2
- package/module/websocket/WebSocketRouter.js.map +1 -1
- package/package.json +1 -1
- package/utility/NetworkUtility.d.ts +9 -0
- package/utility/NetworkUtility.d.ts.map +1 -1
- package/utility/NetworkUtility.js +10 -0
- package/utility/NetworkUtility.js.map +1 -1
|
@@ -20,7 +20,7 @@ class WebSocketRouter extends base_1.AbstractRouter {
|
|
|
20
20
|
// 检测重复连接
|
|
21
21
|
const key = `${request.socket.remoteAddress}:${request.socket.remotePort}`;
|
|
22
22
|
if (this.clients.has(key)) {
|
|
23
|
-
websocket.close(utility_1.NetworkUtility.
|
|
23
|
+
websocket.close(utility_1.NetworkUtility.WSCloseCode.CONFLICT, `重复连接,客户端${key}已存在`);
|
|
24
24
|
this.logError(`重复连接,客户端${key}已存在`);
|
|
25
25
|
return;
|
|
26
26
|
}
|
|
@@ -29,7 +29,7 @@ class WebSocketRouter extends base_1.AbstractRouter {
|
|
|
29
29
|
const url = new URL(request.url || '', `ws://${host}`);
|
|
30
30
|
const check = await this.OnCheck(this.server, url);
|
|
31
31
|
if (!check) {
|
|
32
|
-
websocket.close(utility_1.NetworkUtility.
|
|
32
|
+
websocket.close(utility_1.NetworkUtility.WSCloseCode.AUTH_FAILED, "鉴权处理失败,参数有误!");
|
|
33
33
|
this.logError(`鉴权处理失败,参数有误!`);
|
|
34
34
|
return;
|
|
35
35
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"WebSocketRouter.js","sourceRoot":"","sources":["../../../src/module/websocket/WebSocketRouter.ts"],"names":[],"mappings":";;;AAEA,qCAA4C;AAC5C,uDAAoD;AACpD,2CAA8D;AAG9D,wBAAwB;AACxB,MAAsB,eAAgB,SAAQ,qBAAc;IAOxD,WAAW;IACX,YAAmB,MAAc,EAAE,IAAY;QAE3C,KAAK,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;QACpB,IAAI,CAAC,OAAO,GAAG,IAAI,GAAG,EAA2B,CAAC;QAClD,IAAI,CAAC,iBAAiB,EAAE,CAAC;IAC7B,CAAC;IAED,WAAW;IACJ,KAAK,CAAC,SAAS,CAAC,SAAuB,EAAE,OAAwB;QAEpE,IAAI,IAAI,IAAI,SAAS,IAAI,IAAI,IAAI,OAAO,EAAE,CAAC;YAAC,OAAO;QAAC,CAAC;QACrD,SAAS;QACT,MAAM,GAAG,GAAG,GAAG,OAAO,CAAC,MAAM,CAAC,aAAa,IAAI,OAAO,CAAC,MAAM,CAAC,UAAU,EAAE,CAAC;QAC3E,IAAI,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,EACzB,CAAC;YACG,SAAS,CAAC,KAAK,CAAC,wBAAc,CAAC,
|
|
1
|
+
{"version":3,"file":"WebSocketRouter.js","sourceRoot":"","sources":["../../../src/module/websocket/WebSocketRouter.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -15,6 +15,15 @@ export declare namespace NetworkUtility {
|
|
|
15
15
|
Patch = "patch",
|
|
16
16
|
Trace = "trace"
|
|
17
17
|
}
|
|
18
|
+
/** WebSocket 关闭码(1000-4999 有效,4000+ 为应用自定义) */
|
|
19
|
+
enum WSCloseCode {
|
|
20
|
+
/** 重复连接 */
|
|
21
|
+
CONFLICT = 4000,
|
|
22
|
+
/** 鉴权失败 */
|
|
23
|
+
AUTH_FAILED = 4001,
|
|
24
|
+
/** 参数错误 */
|
|
25
|
+
BAD_REQUEST = 4002
|
|
26
|
+
}
|
|
18
27
|
/** 响应码 */
|
|
19
28
|
enum ResponseCode {
|
|
20
29
|
/** 请求成功 */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"NetworkUtility.d.ts","sourceRoot":"","sources":["../../src/utility/NetworkUtility.ts"],"names":[],"mappings":"AAGA,WAAW;AACX,yBAAiB,cAAc,CAC/B;IAaI,cAAc;IACd,SAAsB,WAAW,IAAI,OAAO,CAAC,MAAM,CAAC,CAkBnD;IACD,cAAc;IACd,SAAgB,UAAU,IAAI,MAAM,CAcnC;IAED,WAAW;IACX,KAAY,cAAc;QAEtB,GAAG,QAAQ;QACX,IAAI,SAAS;QACb,GAAG,QAAQ;QACX,MAAM,WAAW;QACjB,OAAO,YAAY;QACnB,IAAI,SAAS;QACb,KAAK,UAAU;QACf,KAAK,UAAU;KAClB;IACD,UAAU;IACV,KAAY,YAAY;QAGpB,WAAW;QACX,OAAO,MAAM;QACb,WAAW;QACX,OAAO,MAAM;QACb,kBAAkB;QAClB,QAAQ,MAAM;QACd,iBAAiB;QACjB,UAAU,MAAM;QAGhB,aAAa;QACb,WAAW,MAAM;QACjB,eAAe;QACf,YAAY,MAAM;QAClB,YAAY;QACZ,SAAS,MAAM;QACf,YAAY;QACZ,SAAS,MAAM;QACf,cAAc;QACd,kBAAkB,MAAM;QACxB,WAAW;QACX,eAAe,MAAM;QACrB,kBAAkB;QAClB,QAAQ,MAAM;QACd,YAAY;QACZ,iBAAiB,MAAM;QACvB,eAAe;QACf,sBAAsB,MAAM;QAC5B,cAAc;QACd,+BAA+B,MAAM;QACrC,aAAa;QACb,iBAAiB,MAAM;QAGvB,cAAc;QACd,qBAAqB,MAAM;QAC3B,YAAY;QACZ,eAAe,MAAM;QACrB,WAAW;QACX,WAAW,MAAM;QACjB,YAAY;QACZ,mBAAmB,MAAM;QACzB,WAAW;QACX,eAAe,MAAM;QAGrB,aAAa;QACb,cAAc,OAAO;QACrB,YAAY;QACZ,aAAa,OAAO;QACpB,YAAY;QACZ,gBAAgB,OAAO;QACvB,YAAY;QACZ,aAAa,OAAO;QACpB,aAAa;QACb,sBAAsB,OAAO;QAC7B,YAAY;QACZ,eAAe,OAAO;QACtB,aAAa;QACb,aAAa,OAAO;QACpB,aAAa;QACb,kBAAkB,OAAO;QACzB,cAAc;QACd,qBAAqB,OAAO;KAC/B;CACJ"}
|
|
1
|
+
{"version":3,"file":"NetworkUtility.d.ts","sourceRoot":"","sources":["../../src/utility/NetworkUtility.ts"],"names":[],"mappings":"AAGA,WAAW;AACX,yBAAiB,cAAc,CAC/B;IAaI,cAAc;IACd,SAAsB,WAAW,IAAI,OAAO,CAAC,MAAM,CAAC,CAkBnD;IACD,cAAc;IACd,SAAgB,UAAU,IAAI,MAAM,CAcnC;IAED,WAAW;IACX,KAAY,cAAc;QAEtB,GAAG,QAAQ;QACX,IAAI,SAAS;QACb,GAAG,QAAQ;QACX,MAAM,WAAW;QACjB,OAAO,YAAY;QACnB,IAAI,SAAS;QACb,KAAK,UAAU;QACf,KAAK,UAAU;KAClB;IACD,+CAA+C;IAC/C,KAAY,WAAW;QAEnB,WAAW;QACX,QAAQ,OAAO;QACf,WAAW;QACX,WAAW,OAAO;QAClB,WAAW;QACX,WAAW,OAAO;KACrB;IACD,UAAU;IACV,KAAY,YAAY;QAGpB,WAAW;QACX,OAAO,MAAM;QACb,WAAW;QACX,OAAO,MAAM;QACb,kBAAkB;QAClB,QAAQ,MAAM;QACd,iBAAiB;QACjB,UAAU,MAAM;QAGhB,aAAa;QACb,WAAW,MAAM;QACjB,eAAe;QACf,YAAY,MAAM;QAClB,YAAY;QACZ,SAAS,MAAM;QACf,YAAY;QACZ,SAAS,MAAM;QACf,cAAc;QACd,kBAAkB,MAAM;QACxB,WAAW;QACX,eAAe,MAAM;QACrB,kBAAkB;QAClB,QAAQ,MAAM;QACd,YAAY;QACZ,iBAAiB,MAAM;QACvB,eAAe;QACf,sBAAsB,MAAM;QAC5B,cAAc;QACd,+BAA+B,MAAM;QACrC,aAAa;QACb,iBAAiB,MAAM;QAGvB,cAAc;QACd,qBAAqB,MAAM;QAC3B,YAAY;QACZ,eAAe,MAAM;QACrB,WAAW;QACX,WAAW,MAAM;QACjB,YAAY;QACZ,mBAAmB,MAAM;QACzB,WAAW;QACX,eAAe,MAAM;QAGrB,aAAa;QACb,cAAc,OAAO;QACrB,YAAY;QACZ,aAAa,OAAO;QACpB,YAAY;QACZ,gBAAgB,OAAO;QACvB,YAAY;QACZ,aAAa,OAAO;QACpB,aAAa;QACb,sBAAsB,OAAO;QAC7B,YAAY;QACZ,eAAe,OAAO;QACtB,aAAa;QACb,aAAa,OAAO;QACpB,aAAa;QACb,kBAAkB,OAAO;QACzB,cAAc;QACd,qBAAqB,OAAO;KAC/B;CACJ"}
|
|
@@ -64,6 +64,16 @@ var NetworkUtility;
|
|
|
64
64
|
E_ProtocalType["Patch"] = "patch";
|
|
65
65
|
E_ProtocalType["Trace"] = "trace";
|
|
66
66
|
})(E_ProtocalType = NetworkUtility.E_ProtocalType || (NetworkUtility.E_ProtocalType = {}));
|
|
67
|
+
/** WebSocket 关闭码(1000-4999 有效,4000+ 为应用自定义) */
|
|
68
|
+
let WSCloseCode;
|
|
69
|
+
(function (WSCloseCode) {
|
|
70
|
+
/** 重复连接 */
|
|
71
|
+
WSCloseCode[WSCloseCode["CONFLICT"] = 4000] = "CONFLICT";
|
|
72
|
+
/** 鉴权失败 */
|
|
73
|
+
WSCloseCode[WSCloseCode["AUTH_FAILED"] = 4001] = "AUTH_FAILED";
|
|
74
|
+
/** 参数错误 */
|
|
75
|
+
WSCloseCode[WSCloseCode["BAD_REQUEST"] = 4002] = "BAD_REQUEST";
|
|
76
|
+
})(WSCloseCode = NetworkUtility.WSCloseCode || (NetworkUtility.WSCloseCode = {}));
|
|
67
77
|
/** 响应码 */
|
|
68
78
|
let ResponseCode;
|
|
69
79
|
(function (ResponseCode) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"NetworkUtility.js","sourceRoot":"","sources":["../../src/utility/NetworkUtility.ts"],"names":[],"mappings":";;;;;;AAAA,4CAAoB;AACpB,kDAA0B;AAE1B,WAAW;AACX,IAAiB,cAAc,
|
|
1
|
+
{"version":3,"file":"NetworkUtility.js","sourceRoot":"","sources":["../../src/utility/NetworkUtility.ts"],"names":[],"mappings":"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"}
|