@lsby/net-core 0.7.9 → 0.7.11-beta.1
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/dist/cjs/global/global.cjs +8 -17
- package/dist/cjs/global/global.d.cts +2 -2
- package/dist/cjs/global/web-socket-management.cjs +8 -17
- package/dist/cjs/global/web-socket-management.d.cts +3 -3
- package/dist/cjs/index.cjs +22 -31
- package/dist/cjs/plugin/extend/custom-data.cjs +8 -17
- package/dist/cjs/plugin/extend/urlencoded.cjs +8 -17
- package/dist/cjs/plugin/extend/web-socket.cjs +10 -19
- package/dist/cjs/server/server.cjs +20 -29
- package/dist/esm/{chunk-AB3GCWSG.js → chunk-7YSXFQXB.js} +9 -18
- package/dist/esm/{chunk-GMWVTFTC.js → chunk-BBDALATZ.js} +13 -13
- package/dist/esm/{chunk-G6IT6LW7.js → chunk-O2ZDZKFT.js} +1 -1
- package/dist/esm/{chunk-RHDBIJPA.js → chunk-TN3QCUBD.js} +1 -1
- package/dist/esm/{chunk-ZGH3QIDP.js → chunk-VZH2ETK3.js} +3 -3
- package/dist/esm/global/global.d.ts +2 -2
- package/dist/esm/global/global.js +1 -1
- package/dist/esm/global/web-socket-management.d.ts +3 -3
- package/dist/esm/global/web-socket-management.js +1 -1
- package/dist/esm/index.js +5 -5
- package/dist/esm/plugin/extend/custom-data.js +2 -2
- package/dist/esm/plugin/extend/urlencoded.js +2 -2
- package/dist/esm/plugin/extend/web-socket.js +2 -2
- package/dist/esm/server/server.js +2 -2
- package/package.json +3 -3
|
@@ -31,12 +31,12 @@ var WebSocket\u7BA1\u7406\u5668 = class {
|
|
|
31
31
|
constructor(\u8FDE\u63A5\u8868) {
|
|
32
32
|
this.\u8FDE\u63A5\u8868 = \u8FDE\u63A5\u8868;
|
|
33
33
|
}
|
|
34
|
-
log = Global.
|
|
34
|
+
log = Global.getItemSync("log").extend("@lsby:net-core").extend("WebSocket\u7BA1\u7406\u5668");
|
|
35
35
|
\u6E05\u7406\u51FD\u6570\u8868 = {};
|
|
36
|
-
|
|
36
|
+
\u589E\u52A0\u8FDE\u63A5(id, ws\u53E5\u67C4) {
|
|
37
37
|
this.\u8FDE\u63A5\u8868[id] = ws\u53E5\u67C4;
|
|
38
38
|
}
|
|
39
|
-
|
|
39
|
+
\u67E5\u8BE2\u8FDE\u63A5\u5B58\u5728(id) {
|
|
40
40
|
return this.\u8FDE\u63A5\u8868.hasOwnProperty(id) ? true : false;
|
|
41
41
|
}
|
|
42
42
|
async \u8BBE\u7F6E\u6E05\u7406\u51FD\u6570(id, \u6E05\u7406\u51FD\u6570) {
|
|
@@ -47,19 +47,14 @@ var WebSocket\u7BA1\u7406\u5668 = class {
|
|
|
47
47
|
async \u83B7\u5F97\u53E5\u67C4(id) {
|
|
48
48
|
return this.\u8FDE\u63A5\u8868[id] ?? null;
|
|
49
49
|
}
|
|
50
|
-
|
|
51
|
-
let log = await this.log;
|
|
50
|
+
\u5220\u9664\u8FDE\u63A5(id) {
|
|
52
51
|
let \u6E05\u7406\u51FD\u6570 = this.\u6E05\u7406\u51FD\u6570\u8868[id];
|
|
53
52
|
try {
|
|
54
53
|
this.\u8FDE\u63A5\u8868[id]?.close(1e3, "\u670D\u52A1\u5668\u4E3B\u52A8\u5173\u95ED");
|
|
55
54
|
} catch (err) {
|
|
56
|
-
|
|
57
|
-
}
|
|
58
|
-
try {
|
|
59
|
-
await \u6E05\u7406\u51FD\u6570?.();
|
|
60
|
-
} catch (err) {
|
|
61
|
-
await log.error(`\u6E05\u7406\u8FDE\u63A5\u5931\u8D25, id: ${id}, \u9519\u8BEF: ${err}`);
|
|
55
|
+
this.log.errorSync(`\u5173\u95ED WebSocket \u53E5\u67C4\u5931\u8D25, id: ${id}, \u9519\u8BEF: ${err}`);
|
|
62
56
|
}
|
|
57
|
+
\u6E05\u7406\u51FD\u6570?.().catch((err) => this.log.errorSync(`\u6E05\u7406\u8FDE\u63A5\u5931\u8D25, id: ${id}, \u9519\u8BEF: ${err}`));
|
|
63
58
|
delete this.\u8FDE\u63A5\u8868[id];
|
|
64
59
|
delete this.\u6E05\u7406\u51FD\u6570\u8868[id];
|
|
65
60
|
}
|
|
@@ -67,12 +62,8 @@ var WebSocket\u7BA1\u7406\u5668 = class {
|
|
|
67
62
|
|
|
68
63
|
// src/global/global.ts
|
|
69
64
|
var Global = new import_ts_global.GlobalService([
|
|
70
|
-
new import_ts_global.
|
|
71
|
-
|
|
72
|
-
}),
|
|
73
|
-
new import_ts_global.GlobalAsyncItem("WebSocket\u7BA1\u7406\u5668", async () => {
|
|
74
|
-
return new WebSocket\u7BA1\u7406\u5668({});
|
|
75
|
-
})
|
|
65
|
+
new import_ts_global.GlobalItem("log", new import_ts_log.Log("@lsby:net-core")),
|
|
66
|
+
new import_ts_global.GlobalItem("WebSocket\u7BA1\u7406\u5668", new WebSocket\u7BA1\u7406\u5668({}))
|
|
76
67
|
]);
|
|
77
68
|
// Annotate the CommonJS export names for ESM import in node:
|
|
78
69
|
0 && (module.exports = {
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import { GlobalService,
|
|
1
|
+
import { GlobalService, GlobalItem } from '@lsby/ts-global';
|
|
2
2
|
import { Log } from '@lsby/ts-log';
|
|
3
3
|
import { WebSocket管理器 as WebSocket___ } from './web-socket-management.cjs';
|
|
4
4
|
import 'ws';
|
|
5
5
|
|
|
6
|
-
declare let Global: GlobalService<[
|
|
6
|
+
declare let Global: GlobalService<[GlobalItem<"log", Log>, GlobalItem<"WebSocket管理器", WebSocket___>]>;
|
|
7
7
|
|
|
8
8
|
export { Global };
|
|
@@ -28,12 +28,8 @@ module.exports = __toCommonJS(web_socket_management_exports);
|
|
|
28
28
|
var import_ts_global = require("@lsby/ts-global");
|
|
29
29
|
var import_ts_log = require("@lsby/ts-log");
|
|
30
30
|
var Global = new import_ts_global.GlobalService([
|
|
31
|
-
new import_ts_global.
|
|
32
|
-
|
|
33
|
-
}),
|
|
34
|
-
new import_ts_global.GlobalAsyncItem("WebSocket\u7BA1\u7406\u5668", async () => {
|
|
35
|
-
return new WebSocket\u7BA1\u7406\u5668({});
|
|
36
|
-
})
|
|
31
|
+
new import_ts_global.GlobalItem("log", new import_ts_log.Log("@lsby:net-core")),
|
|
32
|
+
new import_ts_global.GlobalItem("WebSocket\u7BA1\u7406\u5668", new WebSocket\u7BA1\u7406\u5668({}))
|
|
37
33
|
]);
|
|
38
34
|
|
|
39
35
|
// src/global/web-socket-management.ts
|
|
@@ -41,12 +37,12 @@ var WebSocket\u7BA1\u7406\u5668 = class {
|
|
|
41
37
|
constructor(\u8FDE\u63A5\u8868) {
|
|
42
38
|
this.\u8FDE\u63A5\u8868 = \u8FDE\u63A5\u8868;
|
|
43
39
|
}
|
|
44
|
-
log = Global.
|
|
40
|
+
log = Global.getItemSync("log").extend("@lsby:net-core").extend("WebSocket\u7BA1\u7406\u5668");
|
|
45
41
|
\u6E05\u7406\u51FD\u6570\u8868 = {};
|
|
46
|
-
|
|
42
|
+
\u589E\u52A0\u8FDE\u63A5(id, ws\u53E5\u67C4) {
|
|
47
43
|
this.\u8FDE\u63A5\u8868[id] = ws\u53E5\u67C4;
|
|
48
44
|
}
|
|
49
|
-
|
|
45
|
+
\u67E5\u8BE2\u8FDE\u63A5\u5B58\u5728(id) {
|
|
50
46
|
return this.\u8FDE\u63A5\u8868.hasOwnProperty(id) ? true : false;
|
|
51
47
|
}
|
|
52
48
|
async \u8BBE\u7F6E\u6E05\u7406\u51FD\u6570(id, \u6E05\u7406\u51FD\u6570) {
|
|
@@ -57,19 +53,14 @@ var WebSocket\u7BA1\u7406\u5668 = class {
|
|
|
57
53
|
async \u83B7\u5F97\u53E5\u67C4(id) {
|
|
58
54
|
return this.\u8FDE\u63A5\u8868[id] ?? null;
|
|
59
55
|
}
|
|
60
|
-
|
|
61
|
-
let log = await this.log;
|
|
56
|
+
\u5220\u9664\u8FDE\u63A5(id) {
|
|
62
57
|
let \u6E05\u7406\u51FD\u6570 = this.\u6E05\u7406\u51FD\u6570\u8868[id];
|
|
63
58
|
try {
|
|
64
59
|
this.\u8FDE\u63A5\u8868[id]?.close(1e3, "\u670D\u52A1\u5668\u4E3B\u52A8\u5173\u95ED");
|
|
65
60
|
} catch (err) {
|
|
66
|
-
|
|
67
|
-
}
|
|
68
|
-
try {
|
|
69
|
-
await \u6E05\u7406\u51FD\u6570?.();
|
|
70
|
-
} catch (err) {
|
|
71
|
-
await log.error(`\u6E05\u7406\u8FDE\u63A5\u5931\u8D25, id: ${id}, \u9519\u8BEF: ${err}`);
|
|
61
|
+
this.log.errorSync(`\u5173\u95ED WebSocket \u53E5\u67C4\u5931\u8D25, id: ${id}, \u9519\u8BEF: ${err}`);
|
|
72
62
|
}
|
|
63
|
+
\u6E05\u7406\u51FD\u6570?.().catch((err) => this.log.errorSync(`\u6E05\u7406\u8FDE\u63A5\u5931\u8D25, id: ${id}, \u9519\u8BEF: ${err}`));
|
|
73
64
|
delete this.\u8FDE\u63A5\u8868[id];
|
|
74
65
|
delete this.\u6E05\u7406\u51FD\u6570\u8868[id];
|
|
75
66
|
}
|
|
@@ -6,11 +6,11 @@ declare class WebSocket管理器 {
|
|
|
6
6
|
private log;
|
|
7
7
|
private 清理函数表;
|
|
8
8
|
constructor(连接表: Record<id, WebSocket | null>);
|
|
9
|
-
增加连接(id: id, ws句柄: WebSocket):
|
|
10
|
-
查询连接存在(id: string):
|
|
9
|
+
增加连接(id: id, ws句柄: WebSocket): void;
|
|
10
|
+
查询连接存在(id: string): boolean;
|
|
11
11
|
设置清理函数(id: string, 清理函数: () => Promise<void>): Promise<void>;
|
|
12
12
|
获得句柄(id: id): Promise<WebSocket | null>;
|
|
13
|
-
删除连接(id: string):
|
|
13
|
+
删除连接(id: string): void;
|
|
14
14
|
}
|
|
15
15
|
|
|
16
16
|
export { WebSocket管理器 };
|
package/dist/cjs/index.cjs
CHANGED
|
@@ -251,12 +251,12 @@ var WebSocket\u7BA1\u7406\u5668 = class {
|
|
|
251
251
|
constructor(\u8FDE\u63A5\u8868) {
|
|
252
252
|
this.\u8FDE\u63A5\u8868 = \u8FDE\u63A5\u8868;
|
|
253
253
|
}
|
|
254
|
-
log = Global.
|
|
254
|
+
log = Global.getItemSync("log").extend("@lsby:net-core").extend("WebSocket\u7BA1\u7406\u5668");
|
|
255
255
|
\u6E05\u7406\u51FD\u6570\u8868 = {};
|
|
256
|
-
|
|
256
|
+
\u589E\u52A0\u8FDE\u63A5(id, ws\u53E5\u67C4) {
|
|
257
257
|
this.\u8FDE\u63A5\u8868[id] = ws\u53E5\u67C4;
|
|
258
258
|
}
|
|
259
|
-
|
|
259
|
+
\u67E5\u8BE2\u8FDE\u63A5\u5B58\u5728(id) {
|
|
260
260
|
return this.\u8FDE\u63A5\u8868.hasOwnProperty(id) ? true : false;
|
|
261
261
|
}
|
|
262
262
|
async \u8BBE\u7F6E\u6E05\u7406\u51FD\u6570(id, \u6E05\u7406\u51FD\u6570) {
|
|
@@ -267,19 +267,14 @@ var WebSocket\u7BA1\u7406\u5668 = class {
|
|
|
267
267
|
async \u83B7\u5F97\u53E5\u67C4(id) {
|
|
268
268
|
return this.\u8FDE\u63A5\u8868[id] ?? null;
|
|
269
269
|
}
|
|
270
|
-
|
|
271
|
-
let log = await this.log;
|
|
270
|
+
\u5220\u9664\u8FDE\u63A5(id) {
|
|
272
271
|
let \u6E05\u7406\u51FD\u6570 = this.\u6E05\u7406\u51FD\u6570\u8868[id];
|
|
273
272
|
try {
|
|
274
273
|
this.\u8FDE\u63A5\u8868[id]?.close(1e3, "\u670D\u52A1\u5668\u4E3B\u52A8\u5173\u95ED");
|
|
275
274
|
} catch (err) {
|
|
276
|
-
|
|
277
|
-
}
|
|
278
|
-
try {
|
|
279
|
-
await \u6E05\u7406\u51FD\u6570?.();
|
|
280
|
-
} catch (err) {
|
|
281
|
-
await log.error(`\u6E05\u7406\u8FDE\u63A5\u5931\u8D25, id: ${id}, \u9519\u8BEF: ${err}`);
|
|
275
|
+
this.log.errorSync(`\u5173\u95ED WebSocket \u53E5\u67C4\u5931\u8D25, id: ${id}, \u9519\u8BEF: ${err}`);
|
|
282
276
|
}
|
|
277
|
+
\u6E05\u7406\u51FD\u6570?.().catch((err) => this.log.errorSync(`\u6E05\u7406\u8FDE\u63A5\u5931\u8D25, id: ${id}, \u9519\u8BEF: ${err}`));
|
|
283
278
|
delete this.\u8FDE\u63A5\u8868[id];
|
|
284
279
|
delete this.\u6E05\u7406\u51FD\u6570\u8868[id];
|
|
285
280
|
}
|
|
@@ -287,12 +282,8 @@ var WebSocket\u7BA1\u7406\u5668 = class {
|
|
|
287
282
|
|
|
288
283
|
// src/global/global.ts
|
|
289
284
|
var Global = new import_ts_global.GlobalService([
|
|
290
|
-
new import_ts_global.
|
|
291
|
-
|
|
292
|
-
}),
|
|
293
|
-
new import_ts_global.GlobalAsyncItem("WebSocket\u7BA1\u7406\u5668", async () => {
|
|
294
|
-
return new WebSocket\u7BA1\u7406\u5668({});
|
|
295
|
-
})
|
|
285
|
+
new import_ts_global.GlobalItem("log", new import_ts_log.Log("@lsby:net-core")),
|
|
286
|
+
new import_ts_global.GlobalItem("WebSocket\u7BA1\u7406\u5668", new WebSocket\u7BA1\u7406\u5668({}))
|
|
296
287
|
]);
|
|
297
288
|
|
|
298
289
|
// src/plugin/extend/custom-data.ts
|
|
@@ -472,7 +463,7 @@ var WebSocket\u63D2\u4EF6 = class extends \u63D2\u4EF6 {
|
|
|
472
463
|
await log.debug("\u53D1\u9001 WebSocket \u4FE1\u606F", { \u4FE1\u606F });
|
|
473
464
|
await new Promise((resolve, reject) => {
|
|
474
465
|
ws\u53E5\u67C4?.send(JSON.stringify(\u4FE1\u606F), (err) => {
|
|
475
|
-
if (err !== void 0) {
|
|
466
|
+
if (err !== void 0 && err !== null) {
|
|
476
467
|
log.warnSync("\u53D1\u9001 WebSocket \u4FE1\u606F\u5931\u8D25", { \u9519\u8BEF: err });
|
|
477
468
|
return reject(err);
|
|
478
469
|
}
|
|
@@ -483,7 +474,7 @@ var WebSocket\u63D2\u4EF6 = class extends \u63D2\u4EF6 {
|
|
|
483
474
|
},
|
|
484
475
|
async \u5173\u95EDws\u8FDE\u63A5() {
|
|
485
476
|
await log.debug("\u5173\u95ED WebSocket \u8FDE\u63A5", { wsId });
|
|
486
|
-
|
|
477
|
+
WebSocket\u7BA1\u7406\u56682.\u5220\u9664\u8FDE\u63A5(wsId);
|
|
487
478
|
},
|
|
488
479
|
async \u8BBE\u7F6E\u6E05\u7406\u51FD\u6570(\u6E05\u7406\u51FD\u6570) {
|
|
489
480
|
await log.debug("\u8BBE\u7F6E WebSocket \u6E05\u7406\u51FD\u6570", { wsId });
|
|
@@ -589,28 +580,28 @@ var \u670D\u52A1\u5668 = class {
|
|
|
589
580
|
});
|
|
590
581
|
wss.on("connection", async (ws, req) => {
|
|
591
582
|
let log = logBase.extend((0, import_short_uuid.default)().new()).extend("WebSocket");
|
|
592
|
-
|
|
583
|
+
log.debugSync("\u6536\u5230 WebSocket \u8FDE\u63A5\u8BF7\u6C42: %o", req.url);
|
|
593
584
|
let \u5BA2\u6237\u7AEFid = req.url?.split("?id=")[1] ?? null;
|
|
594
585
|
if (\u5BA2\u6237\u7AEFid === null) {
|
|
595
|
-
|
|
586
|
+
log.errorSync("\u8FDE\u63A5\u8BF7\u6C42\u7F3A\u5C11\u5BA2\u6237\u7AEF ID");
|
|
596
587
|
return this.\u5173\u95EDWebSocket\u8FDE\u63A5(ws, log, 4001, "\u7F3A\u5C11\u5BA2\u6237\u7AEF ID");
|
|
597
588
|
}
|
|
598
|
-
|
|
599
|
-
let WebSocket\u7BA1\u7406\u56682 =
|
|
600
|
-
let \u8FDE\u63A5\u5DF2\u5B58\u5728 =
|
|
589
|
+
log.debugSync("\u89E3\u6790\u5BA2\u6237\u7AEF ID: %s", \u5BA2\u6237\u7AEFid);
|
|
590
|
+
let WebSocket\u7BA1\u7406\u56682 = Global.getItemSync("WebSocket\u7BA1\u7406\u5668");
|
|
591
|
+
let \u8FDE\u63A5\u5DF2\u5B58\u5728 = WebSocket\u7BA1\u7406\u56682.\u67E5\u8BE2\u8FDE\u63A5\u5B58\u5728(\u5BA2\u6237\u7AEFid);
|
|
601
592
|
if (\u8FDE\u63A5\u5DF2\u5B58\u5728) {
|
|
602
|
-
|
|
593
|
+
log.errorSync("\u5BA2\u6237\u7AEF ID \u5DF2\u5B58\u5728: %s", \u5BA2\u6237\u7AEFid);
|
|
603
594
|
return this.\u5173\u95EDWebSocket\u8FDE\u63A5(ws, log, 4002, "\u5BA2\u6237\u7AEF ID \u5DF2\u5B58\u5728");
|
|
604
595
|
}
|
|
605
|
-
|
|
606
|
-
|
|
596
|
+
WebSocket\u7BA1\u7406\u56682.\u589E\u52A0\u8FDE\u63A5(\u5BA2\u6237\u7AEFid, ws);
|
|
597
|
+
log.infoSync("WebSocket \u8FDE\u63A5\u5DF2\u5EFA\u7ACB, \u5BA2\u6237\u7AEF ID: %s", \u5BA2\u6237\u7AEFid);
|
|
607
598
|
ws.on("close", async () => {
|
|
608
|
-
|
|
609
|
-
|
|
599
|
+
log.infoSync("WebSocket \u8FDE\u63A5\u5173\u95ED: %s", \u5BA2\u6237\u7AEFid);
|
|
600
|
+
WebSocket\u7BA1\u7406\u56682.\u5220\u9664\u8FDE\u63A5(\u5BA2\u6237\u7AEFid);
|
|
610
601
|
});
|
|
611
602
|
ws.on("error", async (err) => {
|
|
612
|
-
|
|
613
|
-
|
|
603
|
+
log.errorSync("WebSocket \u51FA\u73B0\u9519\u8BEF, \u5BA2\u6237\u7AEF ID: %s, \u9519\u8BEF: %o", \u5BA2\u6237\u7AEFid, err);
|
|
604
|
+
WebSocket\u7BA1\u7406\u56682.\u5220\u9664\u8FDE\u63A5(\u5BA2\u6237\u7AEFid);
|
|
614
605
|
});
|
|
615
606
|
});
|
|
616
607
|
}
|
|
@@ -33,12 +33,12 @@ var WebSocket\u7BA1\u7406\u5668 = class {
|
|
|
33
33
|
constructor(\u8FDE\u63A5\u8868) {
|
|
34
34
|
this.\u8FDE\u63A5\u8868 = \u8FDE\u63A5\u8868;
|
|
35
35
|
}
|
|
36
|
-
log = Global.
|
|
36
|
+
log = Global.getItemSync("log").extend("@lsby:net-core").extend("WebSocket\u7BA1\u7406\u5668");
|
|
37
37
|
\u6E05\u7406\u51FD\u6570\u8868 = {};
|
|
38
|
-
|
|
38
|
+
\u589E\u52A0\u8FDE\u63A5(id, ws\u53E5\u67C4) {
|
|
39
39
|
this.\u8FDE\u63A5\u8868[id] = ws\u53E5\u67C4;
|
|
40
40
|
}
|
|
41
|
-
|
|
41
|
+
\u67E5\u8BE2\u8FDE\u63A5\u5B58\u5728(id) {
|
|
42
42
|
return this.\u8FDE\u63A5\u8868.hasOwnProperty(id) ? true : false;
|
|
43
43
|
}
|
|
44
44
|
async \u8BBE\u7F6E\u6E05\u7406\u51FD\u6570(id, \u6E05\u7406\u51FD\u6570) {
|
|
@@ -49,19 +49,14 @@ var WebSocket\u7BA1\u7406\u5668 = class {
|
|
|
49
49
|
async \u83B7\u5F97\u53E5\u67C4(id) {
|
|
50
50
|
return this.\u8FDE\u63A5\u8868[id] ?? null;
|
|
51
51
|
}
|
|
52
|
-
|
|
53
|
-
let log = await this.log;
|
|
52
|
+
\u5220\u9664\u8FDE\u63A5(id) {
|
|
54
53
|
let \u6E05\u7406\u51FD\u6570 = this.\u6E05\u7406\u51FD\u6570\u8868[id];
|
|
55
54
|
try {
|
|
56
55
|
this.\u8FDE\u63A5\u8868[id]?.close(1e3, "\u670D\u52A1\u5668\u4E3B\u52A8\u5173\u95ED");
|
|
57
56
|
} catch (err) {
|
|
58
|
-
|
|
59
|
-
}
|
|
60
|
-
try {
|
|
61
|
-
await \u6E05\u7406\u51FD\u6570?.();
|
|
62
|
-
} catch (err) {
|
|
63
|
-
await log.error(`\u6E05\u7406\u8FDE\u63A5\u5931\u8D25, id: ${id}, \u9519\u8BEF: ${err}`);
|
|
57
|
+
this.log.errorSync(`\u5173\u95ED WebSocket \u53E5\u67C4\u5931\u8D25, id: ${id}, \u9519\u8BEF: ${err}`);
|
|
64
58
|
}
|
|
59
|
+
\u6E05\u7406\u51FD\u6570?.().catch((err) => this.log.errorSync(`\u6E05\u7406\u8FDE\u63A5\u5931\u8D25, id: ${id}, \u9519\u8BEF: ${err}`));
|
|
65
60
|
delete this.\u8FDE\u63A5\u8868[id];
|
|
66
61
|
delete this.\u6E05\u7406\u51FD\u6570\u8868[id];
|
|
67
62
|
}
|
|
@@ -69,12 +64,8 @@ var WebSocket\u7BA1\u7406\u5668 = class {
|
|
|
69
64
|
|
|
70
65
|
// src/global/global.ts
|
|
71
66
|
var Global = new import_ts_global.GlobalService([
|
|
72
|
-
new import_ts_global.
|
|
73
|
-
|
|
74
|
-
}),
|
|
75
|
-
new import_ts_global.GlobalAsyncItem("WebSocket\u7BA1\u7406\u5668", async () => {
|
|
76
|
-
return new WebSocket\u7BA1\u7406\u5668({});
|
|
77
|
-
})
|
|
67
|
+
new import_ts_global.GlobalItem("log", new import_ts_log.Log("@lsby:net-core")),
|
|
68
|
+
new import_ts_global.GlobalItem("WebSocket\u7BA1\u7406\u5668", new WebSocket\u7BA1\u7406\u5668({}))
|
|
78
69
|
]);
|
|
79
70
|
|
|
80
71
|
// src/plugin/plug.ts
|
|
@@ -45,12 +45,12 @@ var WebSocket\u7BA1\u7406\u5668 = class {
|
|
|
45
45
|
constructor(\u8FDE\u63A5\u8868) {
|
|
46
46
|
this.\u8FDE\u63A5\u8868 = \u8FDE\u63A5\u8868;
|
|
47
47
|
}
|
|
48
|
-
log = Global.
|
|
48
|
+
log = Global.getItemSync("log").extend("@lsby:net-core").extend("WebSocket\u7BA1\u7406\u5668");
|
|
49
49
|
\u6E05\u7406\u51FD\u6570\u8868 = {};
|
|
50
|
-
|
|
50
|
+
\u589E\u52A0\u8FDE\u63A5(id, ws\u53E5\u67C4) {
|
|
51
51
|
this.\u8FDE\u63A5\u8868[id] = ws\u53E5\u67C4;
|
|
52
52
|
}
|
|
53
|
-
|
|
53
|
+
\u67E5\u8BE2\u8FDE\u63A5\u5B58\u5728(id) {
|
|
54
54
|
return this.\u8FDE\u63A5\u8868.hasOwnProperty(id) ? true : false;
|
|
55
55
|
}
|
|
56
56
|
async \u8BBE\u7F6E\u6E05\u7406\u51FD\u6570(id, \u6E05\u7406\u51FD\u6570) {
|
|
@@ -61,19 +61,14 @@ var WebSocket\u7BA1\u7406\u5668 = class {
|
|
|
61
61
|
async \u83B7\u5F97\u53E5\u67C4(id) {
|
|
62
62
|
return this.\u8FDE\u63A5\u8868[id] ?? null;
|
|
63
63
|
}
|
|
64
|
-
|
|
65
|
-
let log = await this.log;
|
|
64
|
+
\u5220\u9664\u8FDE\u63A5(id) {
|
|
66
65
|
let \u6E05\u7406\u51FD\u6570 = this.\u6E05\u7406\u51FD\u6570\u8868[id];
|
|
67
66
|
try {
|
|
68
67
|
this.\u8FDE\u63A5\u8868[id]?.close(1e3, "\u670D\u52A1\u5668\u4E3B\u52A8\u5173\u95ED");
|
|
69
68
|
} catch (err) {
|
|
70
|
-
|
|
71
|
-
}
|
|
72
|
-
try {
|
|
73
|
-
await \u6E05\u7406\u51FD\u6570?.();
|
|
74
|
-
} catch (err) {
|
|
75
|
-
await log.error(`\u6E05\u7406\u8FDE\u63A5\u5931\u8D25, id: ${id}, \u9519\u8BEF: ${err}`);
|
|
69
|
+
this.log.errorSync(`\u5173\u95ED WebSocket \u53E5\u67C4\u5931\u8D25, id: ${id}, \u9519\u8BEF: ${err}`);
|
|
76
70
|
}
|
|
71
|
+
\u6E05\u7406\u51FD\u6570?.().catch((err) => this.log.errorSync(`\u6E05\u7406\u8FDE\u63A5\u5931\u8D25, id: ${id}, \u9519\u8BEF: ${err}`));
|
|
77
72
|
delete this.\u8FDE\u63A5\u8868[id];
|
|
78
73
|
delete this.\u6E05\u7406\u51FD\u6570\u8868[id];
|
|
79
74
|
}
|
|
@@ -81,12 +76,8 @@ var WebSocket\u7BA1\u7406\u5668 = class {
|
|
|
81
76
|
|
|
82
77
|
// src/global/global.ts
|
|
83
78
|
var Global = new import_ts_global.GlobalService([
|
|
84
|
-
new import_ts_global.
|
|
85
|
-
|
|
86
|
-
}),
|
|
87
|
-
new import_ts_global.GlobalAsyncItem("WebSocket\u7BA1\u7406\u5668", async () => {
|
|
88
|
-
return new WebSocket\u7BA1\u7406\u5668({});
|
|
89
|
-
})
|
|
79
|
+
new import_ts_global.GlobalItem("log", new import_ts_log.Log("@lsby:net-core")),
|
|
80
|
+
new import_ts_global.GlobalItem("WebSocket\u7BA1\u7406\u5668", new WebSocket\u7BA1\u7406\u5668({}))
|
|
90
81
|
]);
|
|
91
82
|
|
|
92
83
|
// src/plugin/plug.ts
|
|
@@ -35,12 +35,12 @@ var WebSocket\u7BA1\u7406\u5668 = class {
|
|
|
35
35
|
constructor(\u8FDE\u63A5\u8868) {
|
|
36
36
|
this.\u8FDE\u63A5\u8868 = \u8FDE\u63A5\u8868;
|
|
37
37
|
}
|
|
38
|
-
log = Global.
|
|
38
|
+
log = Global.getItemSync("log").extend("@lsby:net-core").extend("WebSocket\u7BA1\u7406\u5668");
|
|
39
39
|
\u6E05\u7406\u51FD\u6570\u8868 = {};
|
|
40
|
-
|
|
40
|
+
\u589E\u52A0\u8FDE\u63A5(id, ws\u53E5\u67C4) {
|
|
41
41
|
this.\u8FDE\u63A5\u8868[id] = ws\u53E5\u67C4;
|
|
42
42
|
}
|
|
43
|
-
|
|
43
|
+
\u67E5\u8BE2\u8FDE\u63A5\u5B58\u5728(id) {
|
|
44
44
|
return this.\u8FDE\u63A5\u8868.hasOwnProperty(id) ? true : false;
|
|
45
45
|
}
|
|
46
46
|
async \u8BBE\u7F6E\u6E05\u7406\u51FD\u6570(id, \u6E05\u7406\u51FD\u6570) {
|
|
@@ -51,19 +51,14 @@ var WebSocket\u7BA1\u7406\u5668 = class {
|
|
|
51
51
|
async \u83B7\u5F97\u53E5\u67C4(id) {
|
|
52
52
|
return this.\u8FDE\u63A5\u8868[id] ?? null;
|
|
53
53
|
}
|
|
54
|
-
|
|
55
|
-
let log = await this.log;
|
|
54
|
+
\u5220\u9664\u8FDE\u63A5(id) {
|
|
56
55
|
let \u6E05\u7406\u51FD\u6570 = this.\u6E05\u7406\u51FD\u6570\u8868[id];
|
|
57
56
|
try {
|
|
58
57
|
this.\u8FDE\u63A5\u8868[id]?.close(1e3, "\u670D\u52A1\u5668\u4E3B\u52A8\u5173\u95ED");
|
|
59
58
|
} catch (err) {
|
|
60
|
-
|
|
61
|
-
}
|
|
62
|
-
try {
|
|
63
|
-
await \u6E05\u7406\u51FD\u6570?.();
|
|
64
|
-
} catch (err) {
|
|
65
|
-
await log.error(`\u6E05\u7406\u8FDE\u63A5\u5931\u8D25, id: ${id}, \u9519\u8BEF: ${err}`);
|
|
59
|
+
this.log.errorSync(`\u5173\u95ED WebSocket \u53E5\u67C4\u5931\u8D25, id: ${id}, \u9519\u8BEF: ${err}`);
|
|
66
60
|
}
|
|
61
|
+
\u6E05\u7406\u51FD\u6570?.().catch((err) => this.log.errorSync(`\u6E05\u7406\u8FDE\u63A5\u5931\u8D25, id: ${id}, \u9519\u8BEF: ${err}`));
|
|
67
62
|
delete this.\u8FDE\u63A5\u8868[id];
|
|
68
63
|
delete this.\u6E05\u7406\u51FD\u6570\u8868[id];
|
|
69
64
|
}
|
|
@@ -71,12 +66,8 @@ var WebSocket\u7BA1\u7406\u5668 = class {
|
|
|
71
66
|
|
|
72
67
|
// src/global/global.ts
|
|
73
68
|
var Global = new import_ts_global.GlobalService([
|
|
74
|
-
new import_ts_global.
|
|
75
|
-
|
|
76
|
-
}),
|
|
77
|
-
new import_ts_global.GlobalAsyncItem("WebSocket\u7BA1\u7406\u5668", async () => {
|
|
78
|
-
return new WebSocket\u7BA1\u7406\u5668({});
|
|
79
|
-
})
|
|
69
|
+
new import_ts_global.GlobalItem("log", new import_ts_log.Log("@lsby:net-core")),
|
|
70
|
+
new import_ts_global.GlobalItem("WebSocket\u7BA1\u7406\u5668", new WebSocket\u7BA1\u7406\u5668({}))
|
|
80
71
|
]);
|
|
81
72
|
|
|
82
73
|
// src/plugin/plug.ts
|
|
@@ -134,7 +125,7 @@ var WebSocket\u63D2\u4EF6 = class extends \u63D2\u4EF6 {
|
|
|
134
125
|
await log.debug("\u53D1\u9001 WebSocket \u4FE1\u606F", { \u4FE1\u606F });
|
|
135
126
|
await new Promise((resolve, reject) => {
|
|
136
127
|
ws\u53E5\u67C4?.send(JSON.stringify(\u4FE1\u606F), (err) => {
|
|
137
|
-
if (err !== void 0) {
|
|
128
|
+
if (err !== void 0 && err !== null) {
|
|
138
129
|
log.warnSync("\u53D1\u9001 WebSocket \u4FE1\u606F\u5931\u8D25", { \u9519\u8BEF: err });
|
|
139
130
|
return reject(err);
|
|
140
131
|
}
|
|
@@ -145,7 +136,7 @@ var WebSocket\u63D2\u4EF6 = class extends \u63D2\u4EF6 {
|
|
|
145
136
|
},
|
|
146
137
|
async \u5173\u95EDws\u8FDE\u63A5() {
|
|
147
138
|
await log.debug("\u5173\u95ED WebSocket \u8FDE\u63A5", { wsId });
|
|
148
|
-
|
|
139
|
+
WebSocket\u7BA1\u7406\u56682.\u5220\u9664\u8FDE\u63A5(wsId);
|
|
149
140
|
},
|
|
150
141
|
async \u8BBE\u7F6E\u6E05\u7406\u51FD\u6570(\u6E05\u7406\u51FD\u6570) {
|
|
151
142
|
await log.debug("\u8BBE\u7F6E WebSocket \u6E05\u7406\u51FD\u6570", { wsId });
|
|
@@ -48,12 +48,12 @@ var WebSocket\u7BA1\u7406\u5668 = class {
|
|
|
48
48
|
constructor(\u8FDE\u63A5\u8868) {
|
|
49
49
|
this.\u8FDE\u63A5\u8868 = \u8FDE\u63A5\u8868;
|
|
50
50
|
}
|
|
51
|
-
log = Global.
|
|
51
|
+
log = Global.getItemSync("log").extend("@lsby:net-core").extend("WebSocket\u7BA1\u7406\u5668");
|
|
52
52
|
\u6E05\u7406\u51FD\u6570\u8868 = {};
|
|
53
|
-
|
|
53
|
+
\u589E\u52A0\u8FDE\u63A5(id, ws\u53E5\u67C4) {
|
|
54
54
|
this.\u8FDE\u63A5\u8868[id] = ws\u53E5\u67C4;
|
|
55
55
|
}
|
|
56
|
-
|
|
56
|
+
\u67E5\u8BE2\u8FDE\u63A5\u5B58\u5728(id) {
|
|
57
57
|
return this.\u8FDE\u63A5\u8868.hasOwnProperty(id) ? true : false;
|
|
58
58
|
}
|
|
59
59
|
async \u8BBE\u7F6E\u6E05\u7406\u51FD\u6570(id, \u6E05\u7406\u51FD\u6570) {
|
|
@@ -64,19 +64,14 @@ var WebSocket\u7BA1\u7406\u5668 = class {
|
|
|
64
64
|
async \u83B7\u5F97\u53E5\u67C4(id) {
|
|
65
65
|
return this.\u8FDE\u63A5\u8868[id] ?? null;
|
|
66
66
|
}
|
|
67
|
-
|
|
68
|
-
let log = await this.log;
|
|
67
|
+
\u5220\u9664\u8FDE\u63A5(id) {
|
|
69
68
|
let \u6E05\u7406\u51FD\u6570 = this.\u6E05\u7406\u51FD\u6570\u8868[id];
|
|
70
69
|
try {
|
|
71
70
|
this.\u8FDE\u63A5\u8868[id]?.close(1e3, "\u670D\u52A1\u5668\u4E3B\u52A8\u5173\u95ED");
|
|
72
71
|
} catch (err) {
|
|
73
|
-
|
|
74
|
-
}
|
|
75
|
-
try {
|
|
76
|
-
await \u6E05\u7406\u51FD\u6570?.();
|
|
77
|
-
} catch (err) {
|
|
78
|
-
await log.error(`\u6E05\u7406\u8FDE\u63A5\u5931\u8D25, id: ${id}, \u9519\u8BEF: ${err}`);
|
|
72
|
+
this.log.errorSync(`\u5173\u95ED WebSocket \u53E5\u67C4\u5931\u8D25, id: ${id}, \u9519\u8BEF: ${err}`);
|
|
79
73
|
}
|
|
74
|
+
\u6E05\u7406\u51FD\u6570?.().catch((err) => this.log.errorSync(`\u6E05\u7406\u8FDE\u63A5\u5931\u8D25, id: ${id}, \u9519\u8BEF: ${err}`));
|
|
80
75
|
delete this.\u8FDE\u63A5\u8868[id];
|
|
81
76
|
delete this.\u6E05\u7406\u51FD\u6570\u8868[id];
|
|
82
77
|
}
|
|
@@ -84,12 +79,8 @@ var WebSocket\u7BA1\u7406\u5668 = class {
|
|
|
84
79
|
|
|
85
80
|
// src/global/global.ts
|
|
86
81
|
var Global = new import_ts_global.GlobalService([
|
|
87
|
-
new import_ts_global.
|
|
88
|
-
|
|
89
|
-
}),
|
|
90
|
-
new import_ts_global.GlobalAsyncItem("WebSocket\u7BA1\u7406\u5668", async () => {
|
|
91
|
-
return new WebSocket\u7BA1\u7406\u5668({});
|
|
92
|
-
})
|
|
82
|
+
new import_ts_global.GlobalItem("log", new import_ts_log.Log("@lsby:net-core")),
|
|
83
|
+
new import_ts_global.GlobalItem("WebSocket\u7BA1\u7406\u5668", new WebSocket\u7BA1\u7406\u5668({}))
|
|
93
84
|
]);
|
|
94
85
|
|
|
95
86
|
// src/help/interior.ts
|
|
@@ -203,28 +194,28 @@ var \u670D\u52A1\u5668 = class {
|
|
|
203
194
|
});
|
|
204
195
|
wss.on("connection", async (ws, req) => {
|
|
205
196
|
let log = logBase.extend((0, import_short_uuid.default)().new()).extend("WebSocket");
|
|
206
|
-
|
|
197
|
+
log.debugSync("\u6536\u5230 WebSocket \u8FDE\u63A5\u8BF7\u6C42: %o", req.url);
|
|
207
198
|
let \u5BA2\u6237\u7AEFid = req.url?.split("?id=")[1] ?? null;
|
|
208
199
|
if (\u5BA2\u6237\u7AEFid === null) {
|
|
209
|
-
|
|
200
|
+
log.errorSync("\u8FDE\u63A5\u8BF7\u6C42\u7F3A\u5C11\u5BA2\u6237\u7AEF ID");
|
|
210
201
|
return this.\u5173\u95EDWebSocket\u8FDE\u63A5(ws, log, 4001, "\u7F3A\u5C11\u5BA2\u6237\u7AEF ID");
|
|
211
202
|
}
|
|
212
|
-
|
|
213
|
-
let WebSocket\u7BA1\u7406\u56682 =
|
|
214
|
-
let \u8FDE\u63A5\u5DF2\u5B58\u5728 =
|
|
203
|
+
log.debugSync("\u89E3\u6790\u5BA2\u6237\u7AEF ID: %s", \u5BA2\u6237\u7AEFid);
|
|
204
|
+
let WebSocket\u7BA1\u7406\u56682 = Global.getItemSync("WebSocket\u7BA1\u7406\u5668");
|
|
205
|
+
let \u8FDE\u63A5\u5DF2\u5B58\u5728 = WebSocket\u7BA1\u7406\u56682.\u67E5\u8BE2\u8FDE\u63A5\u5B58\u5728(\u5BA2\u6237\u7AEFid);
|
|
215
206
|
if (\u8FDE\u63A5\u5DF2\u5B58\u5728) {
|
|
216
|
-
|
|
207
|
+
log.errorSync("\u5BA2\u6237\u7AEF ID \u5DF2\u5B58\u5728: %s", \u5BA2\u6237\u7AEFid);
|
|
217
208
|
return this.\u5173\u95EDWebSocket\u8FDE\u63A5(ws, log, 4002, "\u5BA2\u6237\u7AEF ID \u5DF2\u5B58\u5728");
|
|
218
209
|
}
|
|
219
|
-
|
|
220
|
-
|
|
210
|
+
WebSocket\u7BA1\u7406\u56682.\u589E\u52A0\u8FDE\u63A5(\u5BA2\u6237\u7AEFid, ws);
|
|
211
|
+
log.infoSync("WebSocket \u8FDE\u63A5\u5DF2\u5EFA\u7ACB, \u5BA2\u6237\u7AEF ID: %s", \u5BA2\u6237\u7AEFid);
|
|
221
212
|
ws.on("close", async () => {
|
|
222
|
-
|
|
223
|
-
|
|
213
|
+
log.infoSync("WebSocket \u8FDE\u63A5\u5173\u95ED: %s", \u5BA2\u6237\u7AEFid);
|
|
214
|
+
WebSocket\u7BA1\u7406\u56682.\u5220\u9664\u8FDE\u63A5(\u5BA2\u6237\u7AEFid);
|
|
224
215
|
});
|
|
225
216
|
ws.on("error", async (err) => {
|
|
226
|
-
|
|
227
|
-
|
|
217
|
+
log.errorSync("WebSocket \u51FA\u73B0\u9519\u8BEF, \u5BA2\u6237\u7AEF ID: %s, \u9519\u8BEF: %o", \u5BA2\u6237\u7AEFid, err);
|
|
218
|
+
WebSocket\u7BA1\u7406\u56682.\u5220\u9664\u8FDE\u63A5(\u5BA2\u6237\u7AEFid);
|
|
228
219
|
});
|
|
229
220
|
});
|
|
230
221
|
}
|
|
@@ -1,13 +1,9 @@
|
|
|
1
1
|
// src/global/global.ts
|
|
2
|
-
import {
|
|
2
|
+
import { GlobalItem, GlobalService } from "@lsby/ts-global";
|
|
3
3
|
import { Log } from "@lsby/ts-log";
|
|
4
4
|
var Global = new GlobalService([
|
|
5
|
-
new
|
|
6
|
-
|
|
7
|
-
}),
|
|
8
|
-
new GlobalAsyncItem("WebSocket\u7BA1\u7406\u5668", async () => {
|
|
9
|
-
return new WebSocket\u7BA1\u7406\u5668({});
|
|
10
|
-
})
|
|
5
|
+
new GlobalItem("log", new Log("@lsby:net-core")),
|
|
6
|
+
new GlobalItem("WebSocket\u7BA1\u7406\u5668", new WebSocket\u7BA1\u7406\u5668({}))
|
|
11
7
|
]);
|
|
12
8
|
|
|
13
9
|
// src/global/web-socket-management.ts
|
|
@@ -15,12 +11,12 @@ var WebSocket\u7BA1\u7406\u5668 = class {
|
|
|
15
11
|
constructor(\u8FDE\u63A5\u8868) {
|
|
16
12
|
this.\u8FDE\u63A5\u8868 = \u8FDE\u63A5\u8868;
|
|
17
13
|
}
|
|
18
|
-
log = Global.
|
|
14
|
+
log = Global.getItemSync("log").extend("@lsby:net-core").extend("WebSocket\u7BA1\u7406\u5668");
|
|
19
15
|
\u6E05\u7406\u51FD\u6570\u8868 = {};
|
|
20
|
-
|
|
16
|
+
\u589E\u52A0\u8FDE\u63A5(id, ws\u53E5\u67C4) {
|
|
21
17
|
this.\u8FDE\u63A5\u8868[id] = ws\u53E5\u67C4;
|
|
22
18
|
}
|
|
23
|
-
|
|
19
|
+
\u67E5\u8BE2\u8FDE\u63A5\u5B58\u5728(id) {
|
|
24
20
|
return this.\u8FDE\u63A5\u8868.hasOwnProperty(id) ? true : false;
|
|
25
21
|
}
|
|
26
22
|
async \u8BBE\u7F6E\u6E05\u7406\u51FD\u6570(id, \u6E05\u7406\u51FD\u6570) {
|
|
@@ -31,19 +27,14 @@ var WebSocket\u7BA1\u7406\u5668 = class {
|
|
|
31
27
|
async \u83B7\u5F97\u53E5\u67C4(id) {
|
|
32
28
|
return this.\u8FDE\u63A5\u8868[id] ?? null;
|
|
33
29
|
}
|
|
34
|
-
|
|
35
|
-
let log = await this.log;
|
|
30
|
+
\u5220\u9664\u8FDE\u63A5(id) {
|
|
36
31
|
let \u6E05\u7406\u51FD\u6570 = this.\u6E05\u7406\u51FD\u6570\u8868[id];
|
|
37
32
|
try {
|
|
38
33
|
this.\u8FDE\u63A5\u8868[id]?.close(1e3, "\u670D\u52A1\u5668\u4E3B\u52A8\u5173\u95ED");
|
|
39
34
|
} catch (err) {
|
|
40
|
-
|
|
41
|
-
}
|
|
42
|
-
try {
|
|
43
|
-
await \u6E05\u7406\u51FD\u6570?.();
|
|
44
|
-
} catch (err) {
|
|
45
|
-
await log.error(`\u6E05\u7406\u8FDE\u63A5\u5931\u8D25, id: ${id}, \u9519\u8BEF: ${err}`);
|
|
35
|
+
this.log.errorSync(`\u5173\u95ED WebSocket \u53E5\u67C4\u5931\u8D25, id: ${id}, \u9519\u8BEF: ${err}`);
|
|
46
36
|
}
|
|
37
|
+
\u6E05\u7406\u51FD\u6570?.().catch((err) => this.log.errorSync(`\u6E05\u7406\u8FDE\u63A5\u5931\u8D25, id: ${id}, \u9519\u8BEF: ${err}`));
|
|
47
38
|
delete this.\u8FDE\u63A5\u8868[id];
|
|
48
39
|
delete this.\u6E05\u7406\u51FD\u6570\u8868[id];
|
|
49
40
|
}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import {
|
|
2
2
|
Global
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-7YSXFQXB.js";
|
|
4
4
|
import {
|
|
5
5
|
递归截断字符串
|
|
6
6
|
} from "./chunk-NMG5C5AS.js";
|
|
@@ -98,28 +98,28 @@ var \u670D\u52A1\u5668 = class {
|
|
|
98
98
|
});
|
|
99
99
|
wss.on("connection", async (ws, req) => {
|
|
100
100
|
let log = logBase.extend(short().new()).extend("WebSocket");
|
|
101
|
-
|
|
101
|
+
log.debugSync("\u6536\u5230 WebSocket \u8FDE\u63A5\u8BF7\u6C42: %o", req.url);
|
|
102
102
|
let \u5BA2\u6237\u7AEFid = req.url?.split("?id=")[1] ?? null;
|
|
103
103
|
if (\u5BA2\u6237\u7AEFid === null) {
|
|
104
|
-
|
|
104
|
+
log.errorSync("\u8FDE\u63A5\u8BF7\u6C42\u7F3A\u5C11\u5BA2\u6237\u7AEF ID");
|
|
105
105
|
return this.\u5173\u95EDWebSocket\u8FDE\u63A5(ws, log, 4001, "\u7F3A\u5C11\u5BA2\u6237\u7AEF ID");
|
|
106
106
|
}
|
|
107
|
-
|
|
108
|
-
let WebSocket\u7BA1\u7406\u5668 =
|
|
109
|
-
let \u8FDE\u63A5\u5DF2\u5B58\u5728 =
|
|
107
|
+
log.debugSync("\u89E3\u6790\u5BA2\u6237\u7AEF ID: %s", \u5BA2\u6237\u7AEFid);
|
|
108
|
+
let WebSocket\u7BA1\u7406\u5668 = Global.getItemSync("WebSocket\u7BA1\u7406\u5668");
|
|
109
|
+
let \u8FDE\u63A5\u5DF2\u5B58\u5728 = WebSocket\u7BA1\u7406\u5668.\u67E5\u8BE2\u8FDE\u63A5\u5B58\u5728(\u5BA2\u6237\u7AEFid);
|
|
110
110
|
if (\u8FDE\u63A5\u5DF2\u5B58\u5728) {
|
|
111
|
-
|
|
111
|
+
log.errorSync("\u5BA2\u6237\u7AEF ID \u5DF2\u5B58\u5728: %s", \u5BA2\u6237\u7AEFid);
|
|
112
112
|
return this.\u5173\u95EDWebSocket\u8FDE\u63A5(ws, log, 4002, "\u5BA2\u6237\u7AEF ID \u5DF2\u5B58\u5728");
|
|
113
113
|
}
|
|
114
|
-
|
|
115
|
-
|
|
114
|
+
WebSocket\u7BA1\u7406\u5668.\u589E\u52A0\u8FDE\u63A5(\u5BA2\u6237\u7AEFid, ws);
|
|
115
|
+
log.infoSync("WebSocket \u8FDE\u63A5\u5DF2\u5EFA\u7ACB, \u5BA2\u6237\u7AEF ID: %s", \u5BA2\u6237\u7AEFid);
|
|
116
116
|
ws.on("close", async () => {
|
|
117
|
-
|
|
118
|
-
|
|
117
|
+
log.infoSync("WebSocket \u8FDE\u63A5\u5173\u95ED: %s", \u5BA2\u6237\u7AEFid);
|
|
118
|
+
WebSocket\u7BA1\u7406\u5668.\u5220\u9664\u8FDE\u63A5(\u5BA2\u6237\u7AEFid);
|
|
119
119
|
});
|
|
120
120
|
ws.on("error", async (err) => {
|
|
121
|
-
|
|
122
|
-
|
|
121
|
+
log.errorSync("WebSocket \u51FA\u73B0\u9519\u8BEF, \u5BA2\u6237\u7AEF ID: %s, \u9519\u8BEF: %o", \u5BA2\u6237\u7AEFid, err);
|
|
122
|
+
WebSocket\u7BA1\u7406\u5668.\u5220\u9664\u8FDE\u63A5(\u5BA2\u6237\u7AEFid);
|
|
123
123
|
});
|
|
124
124
|
});
|
|
125
125
|
}
|
|
@@ -3,7 +3,7 @@ import {
|
|
|
3
3
|
} from "./chunk-43GZE5YL.js";
|
|
4
4
|
import {
|
|
5
5
|
Global
|
|
6
|
-
} from "./chunk-
|
|
6
|
+
} from "./chunk-7YSXFQXB.js";
|
|
7
7
|
|
|
8
8
|
// src/plugin/extend/web-socket.ts
|
|
9
9
|
import { WebSocket } from "ws";
|
|
@@ -48,7 +48,7 @@ var WebSocket\u63D2\u4EF6 = class extends \u63D2\u4EF6 {
|
|
|
48
48
|
await log.debug("\u53D1\u9001 WebSocket \u4FE1\u606F", { \u4FE1\u606F });
|
|
49
49
|
await new Promise((resolve, reject) => {
|
|
50
50
|
ws\u53E5\u67C4?.send(JSON.stringify(\u4FE1\u606F), (err) => {
|
|
51
|
-
if (err !== void 0) {
|
|
51
|
+
if (err !== void 0 && err !== null) {
|
|
52
52
|
log.warnSync("\u53D1\u9001 WebSocket \u4FE1\u606F\u5931\u8D25", { \u9519\u8BEF: err });
|
|
53
53
|
return reject(err);
|
|
54
54
|
}
|
|
@@ -59,7 +59,7 @@ var WebSocket\u63D2\u4EF6 = class extends \u63D2\u4EF6 {
|
|
|
59
59
|
},
|
|
60
60
|
async \u5173\u95EDws\u8FDE\u63A5() {
|
|
61
61
|
await log.debug("\u5173\u95ED WebSocket \u8FDE\u63A5", { wsId });
|
|
62
|
-
|
|
62
|
+
WebSocket\u7BA1\u7406\u5668.\u5220\u9664\u8FDE\u63A5(wsId);
|
|
63
63
|
},
|
|
64
64
|
async \u8BBE\u7F6E\u6E05\u7406\u51FD\u6570(\u6E05\u7406\u51FD\u6570) {
|
|
65
65
|
await log.debug("\u8BBE\u7F6E WebSocket \u6E05\u7406\u51FD\u6570", { wsId });
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import { GlobalService,
|
|
1
|
+
import { GlobalService, GlobalItem } from '@lsby/ts-global';
|
|
2
2
|
import { Log } from '@lsby/ts-log';
|
|
3
3
|
import { WebSocket管理器 as WebSocket___ } from './web-socket-management.js';
|
|
4
4
|
import 'ws';
|
|
5
5
|
|
|
6
|
-
declare let Global: GlobalService<[
|
|
6
|
+
declare let Global: GlobalService<[GlobalItem<"log", Log>, GlobalItem<"WebSocket管理器", WebSocket___>]>;
|
|
7
7
|
|
|
8
8
|
export { Global };
|
|
@@ -6,11 +6,11 @@ declare class WebSocket管理器 {
|
|
|
6
6
|
private log;
|
|
7
7
|
private 清理函数表;
|
|
8
8
|
constructor(连接表: Record<id, WebSocket | null>);
|
|
9
|
-
增加连接(id: id, ws句柄: WebSocket):
|
|
10
|
-
查询连接存在(id: string):
|
|
9
|
+
增加连接(id: id, ws句柄: WebSocket): void;
|
|
10
|
+
查询连接存在(id: string): boolean;
|
|
11
11
|
设置清理函数(id: string, 清理函数: () => Promise<void>): Promise<void>;
|
|
12
12
|
获得句柄(id: id): Promise<WebSocket | null>;
|
|
13
|
-
删除连接(id: string):
|
|
13
|
+
删除连接(id: string): void;
|
|
14
14
|
}
|
|
15
15
|
|
|
16
16
|
export { WebSocket管理器 };
|
package/dist/esm/index.js
CHANGED
|
@@ -3,7 +3,7 @@ import {
|
|
|
3
3
|
} from "./chunk-47T4ZLNQ.js";
|
|
4
4
|
import {
|
|
5
5
|
自定义数据插件
|
|
6
|
-
} from "./chunk-
|
|
6
|
+
} from "./chunk-TN3QCUBD.js";
|
|
7
7
|
import {
|
|
8
8
|
JSON解析插件
|
|
9
9
|
} from "./chunk-2I2MJFB2.js";
|
|
@@ -18,10 +18,10 @@ import {
|
|
|
18
18
|
} from "./chunk-RRUUWHTF.js";
|
|
19
19
|
import {
|
|
20
20
|
表单解析插件
|
|
21
|
-
} from "./chunk-
|
|
21
|
+
} from "./chunk-O2ZDZKFT.js";
|
|
22
22
|
import {
|
|
23
23
|
WebSocket插件
|
|
24
|
-
} from "./chunk-
|
|
24
|
+
} from "./chunk-VZH2ETK3.js";
|
|
25
25
|
import {
|
|
26
26
|
接口测试
|
|
27
27
|
} from "./chunk-N7TPWCQ5.js";
|
|
@@ -30,7 +30,7 @@ import {
|
|
|
30
30
|
} from "./chunk-43GZE5YL.js";
|
|
31
31
|
import {
|
|
32
32
|
服务器
|
|
33
|
-
} from "./chunk-
|
|
33
|
+
} from "./chunk-BBDALATZ.js";
|
|
34
34
|
import {
|
|
35
35
|
EXPORT_TYPE
|
|
36
36
|
} from "./chunk-ZF7EC2OM.js";
|
|
@@ -46,7 +46,7 @@ import {
|
|
|
46
46
|
常用形式转换器,
|
|
47
47
|
接口结果转换器
|
|
48
48
|
} from "./chunk-AEG7V7QY.js";
|
|
49
|
-
import "./chunk-
|
|
49
|
+
import "./chunk-7YSXFQXB.js";
|
|
50
50
|
import {
|
|
51
51
|
构造元组,
|
|
52
52
|
构造对象
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@lsby/net-core",
|
|
3
|
-
"version": "0.7.
|
|
3
|
+
"version": "0.7.11-beta.1",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"exports": {
|
|
6
6
|
"require": "./dist/cjs/index.cjs",
|
|
@@ -38,7 +38,7 @@
|
|
|
38
38
|
"short-uuid": "^5.2.0",
|
|
39
39
|
"vitest": "^2.0.2",
|
|
40
40
|
"ws": "^8.18.0",
|
|
41
|
-
"zod": "^3.
|
|
41
|
+
"zod": "^3.24.2"
|
|
42
42
|
},
|
|
43
43
|
"devDependencies": {
|
|
44
44
|
"@ianvs/prettier-plugin-sort-imports": "^4.2.1",
|
|
@@ -63,7 +63,7 @@
|
|
|
63
63
|
"typescript": "<5.6.0"
|
|
64
64
|
},
|
|
65
65
|
"peerDependencies": {
|
|
66
|
-
"@lsby/ts-fp-data": "^0.2.
|
|
66
|
+
"@lsby/ts-fp-data": "^0.2.5",
|
|
67
67
|
"@types/express": "^4.17.21"
|
|
68
68
|
},
|
|
69
69
|
"packageManager": "pnpm@9.7.1+sha512.faf344af2d6ca65c4c5c8c2224ea77a81a5e8859cbc4e06b1511ddce2f0151512431dd19e6aff31f2c6a8f5f2aced9bd2273e1fed7dd4de1868984059d2c4247"
|