@lsby/net-core 0.7.10 → 0.7.11-beta.2
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/bin/gen-api-list/bin.cjs +5 -10
- package/dist/bin/gen-api-list/index.cjs +5 -10
- package/dist/bin/gen-api-type/bin.cjs +4 -8
- package/dist/bin/gen-api-type/index.cjs +4 -8
- package/dist/bin/gen-test/bin.cjs +6 -12
- package/dist/bin/gen-test/index.cjs +6 -12
- package/dist/cjs/action/action.bak.cjs +6 -12
- package/dist/cjs/bin/gen-api-list/bin.cjs +5 -10
- package/dist/cjs/bin/gen-api-list/index.cjs +5 -10
- package/dist/cjs/bin/gen-api-type/bin.cjs +4 -8
- package/dist/cjs/bin/gen-api-type/index.cjs +4 -8
- package/dist/cjs/bin/gen-test/bin.cjs +6 -12
- package/dist/cjs/bin/gen-test/index.cjs +6 -12
- package/dist/cjs/global/global.cjs +13 -25
- package/dist/cjs/global/global.d.cts +16 -5
- package/dist/cjs/help/interior.cjs +4 -8
- package/dist/cjs/index.cjs +31 -50
- package/dist/cjs/interface/interface-logic.cjs +1 -2
- package/dist/cjs/plugin/extend/custom-data.cjs +9 -23
- package/dist/cjs/plugin/extend/json.cjs +4 -8
- package/dist/cjs/plugin/extend/query.cjs +4 -8
- package/dist/cjs/plugin/extend/urlencoded.cjs +9 -23
- package/dist/cjs/plugin/extend/web-socket.cjs +11 -25
- package/dist/cjs/server/server.cjs +25 -43
- package/dist/esm/action/action.bak.js +6 -12
- package/dist/esm/bin/gen-api-list/bin.js +2 -2
- package/dist/esm/bin/gen-api-list/index.js +1 -1
- package/dist/esm/bin/gen-api-type/bin.js +2 -2
- package/dist/esm/bin/gen-api-type/index.js +1 -1
- package/dist/esm/bin/gen-test/bin.js +2 -2
- package/dist/esm/bin/gen-test/index.js +1 -1
- package/dist/esm/{chunk-ZGH3QIDP.js → chunk-2SPIZUHY.js} +5 -5
- package/dist/esm/{chunk-47T4ZLNQ.js → chunk-4BFNDHRC.js} +1 -1
- package/dist/esm/{chunk-AB3GCWSG.js → chunk-567N5OFV.js} +12 -24
- package/dist/esm/{chunk-2JQ7AEO4.js → chunk-6SGTOPVW.js} +4 -4
- package/dist/esm/{chunk-DV3NLRIF.js → chunk-AFWSZAXR.js} +9 -15
- package/dist/esm/{chunk-2I2MJFB2.js → chunk-B2WM3PYV.js} +4 -4
- package/dist/esm/{chunk-DWJEBJWU.js → chunk-BHMLNO54.js} +7 -11
- package/dist/esm/{chunk-RHDBIJPA.js → chunk-H3HM4O7J.js} +3 -3
- package/dist/esm/{chunk-DI6KYJ65.js → chunk-LZKS5TUK.js} +1 -2
- package/dist/esm/{chunk-G6IT6LW7.js → chunk-NSW5G2QM.js} +4 -4
- package/dist/esm/{chunk-Y2ZVCJPE.js → chunk-UKAZDGUR.js} +8 -13
- package/dist/esm/{chunk-GMWVTFTC.js → chunk-XE7ESQZU.js} +16 -16
- package/dist/esm/{chunk-NMG5C5AS.js → chunk-ZIVQ3WZA.js} +4 -8
- package/dist/esm/global/global.d.ts +16 -5
- package/dist/esm/global/global.js +5 -3
- package/dist/esm/help/interior.js +1 -1
- package/dist/esm/index.js +15 -15
- package/dist/esm/interface/interface-logic.js +1 -1
- package/dist/esm/plugin/extend/chinese-path.js +1 -1
- package/dist/esm/plugin/extend/custom-data.js +2 -2
- package/dist/esm/plugin/extend/json.js +2 -2
- package/dist/esm/plugin/extend/query.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 +3 -3
- package/package.json +2 -2
- package/dist/cjs/global/web-socket-management.cjs +0 -80
- package/dist/cjs/global/web-socket-management.d.cts +0 -16
- package/dist/esm/global/web-socket-management.d.ts +0 -16
- package/dist/esm/global/web-socket-management.js +0 -6
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
import {
|
|
2
2
|
Global
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-567N5OFV.js";
|
|
4
4
|
import {
|
|
5
5
|
递归截断字符串
|
|
6
|
-
} from "./chunk-
|
|
6
|
+
} from "./chunk-ZIVQ3WZA.js";
|
|
7
7
|
|
|
8
8
|
// src/server/server.ts
|
|
9
9
|
import express from "express";
|
|
10
|
-
import { readFile } from "
|
|
11
|
-
import { networkInterfaces } from "
|
|
10
|
+
import { readFile } from "fs/promises";
|
|
11
|
+
import { networkInterfaces } from "os";
|
|
12
12
|
import short from "short-uuid";
|
|
13
13
|
import { WebSocketServer } from "ws";
|
|
14
14
|
var \u670D\u52A1\u5668 = class {
|
|
@@ -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
|
}
|
|
@@ -1,20 +1,16 @@
|
|
|
1
1
|
// src/help/interior.ts
|
|
2
2
|
function \u622A\u65AD\u5B57\u7B26\u4E32(\u5185\u5BB9) {
|
|
3
3
|
let \u6700\u5927\u65E5\u5FD7\u957F\u5EA6 = 1e3;
|
|
4
|
-
if (\u5185\u5BB9.length > \u6700\u5927\u65E5\u5FD7\u957F\u5EA6)
|
|
5
|
-
return \u5185\u5BB9.slice(0, \u6700\u5927\u65E5\u5FD7\u957F\u5EA6) + "...";
|
|
4
|
+
if (\u5185\u5BB9.length > \u6700\u5927\u65E5\u5FD7\u957F\u5EA6) return \u5185\u5BB9.slice(0, \u6700\u5927\u65E5\u5FD7\u957F\u5EA6) + "...";
|
|
6
5
|
return \u5185\u5BB9;
|
|
7
6
|
}
|
|
8
7
|
function \u9012\u5F52\u622A\u65AD\u5B57\u7B26\u4E32(\u6570\u636E) {
|
|
9
|
-
if (typeof \u6570\u636E === "string")
|
|
10
|
-
|
|
11
|
-
if (Array.isArray(\u6570\u636E))
|
|
12
|
-
return \u6570\u636E.map((\u9879) => \u9012\u5F52\u622A\u65AD\u5B57\u7B26\u4E32(\u9879));
|
|
8
|
+
if (typeof \u6570\u636E === "string") return \u622A\u65AD\u5B57\u7B26\u4E32(\u6570\u636E);
|
|
9
|
+
if (Array.isArray(\u6570\u636E)) return \u6570\u636E.map((\u9879) => \u9012\u5F52\u622A\u65AD\u5B57\u7B26\u4E32(\u9879));
|
|
13
10
|
if (typeof \u6570\u636E === "object" && \u6570\u636E !== null) {
|
|
14
11
|
let \u65B0\u6570\u636E = {};
|
|
15
12
|
for (let key in \u6570\u636E) {
|
|
16
|
-
if (\u6570\u636E.hasOwnProperty(key) === true)
|
|
17
|
-
\u65B0\u6570\u636E[key] = \u9012\u5F52\u622A\u65AD\u5B57\u7B26\u4E32(\u6570\u636E[key]);
|
|
13
|
+
if (\u6570\u636E.hasOwnProperty(key) === true) \u65B0\u6570\u636E[key] = \u9012\u5F52\u622A\u65AD\u5B57\u7B26\u4E32(\u6570\u636E[key]);
|
|
18
14
|
}
|
|
19
15
|
return \u65B0\u6570\u636E;
|
|
20
16
|
}
|
|
@@ -1,8 +1,19 @@
|
|
|
1
|
-
import { GlobalService,
|
|
1
|
+
import { GlobalService, GlobalItem } from '@lsby/ts-global';
|
|
2
2
|
import { Log } from '@lsby/ts-log';
|
|
3
|
-
import { WebSocket
|
|
4
|
-
import 'ws';
|
|
3
|
+
import { WebSocket } from 'ws';
|
|
5
4
|
|
|
6
|
-
|
|
5
|
+
type id = string;
|
|
6
|
+
declare class WebSocket管理器 {
|
|
7
|
+
private 连接表;
|
|
8
|
+
private log;
|
|
9
|
+
private 清理函数表;
|
|
10
|
+
constructor(连接表: Record<id, WebSocket | null>);
|
|
11
|
+
增加连接(id: id, ws句柄: WebSocket): void;
|
|
12
|
+
查询连接存在(id: string): boolean;
|
|
13
|
+
设置清理函数(id: string, 清理函数: () => Promise<void>): Promise<void>;
|
|
14
|
+
获得句柄(id: id): Promise<WebSocket | null>;
|
|
15
|
+
删除连接(id: string): void;
|
|
16
|
+
}
|
|
17
|
+
declare let Global: GlobalService<[GlobalItem<"log", Log>, GlobalItem<"WebSocket管理器", WebSocket管理器>]>;
|
|
7
18
|
|
|
8
|
-
export { Global };
|
|
19
|
+
export { Global, WebSocket管理器 };
|
package/dist/esm/index.js
CHANGED
|
@@ -1,36 +1,33 @@
|
|
|
1
|
-
import {
|
|
2
|
-
中文路径支持插件
|
|
3
|
-
} from "./chunk-47T4ZLNQ.js";
|
|
4
1
|
import {
|
|
5
2
|
自定义数据插件
|
|
6
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-H3HM4O7J.js";
|
|
7
4
|
import {
|
|
8
5
|
JSON解析插件
|
|
9
|
-
} from "./chunk-
|
|
6
|
+
} from "./chunk-B2WM3PYV.js";
|
|
10
7
|
import {
|
|
11
8
|
调试请求头插件
|
|
12
9
|
} from "./chunk-7MHKNSNT.js";
|
|
13
10
|
import {
|
|
14
11
|
GET参数解析插件
|
|
15
|
-
} from "./chunk-
|
|
12
|
+
} from "./chunk-6SGTOPVW.js";
|
|
16
13
|
import {
|
|
17
14
|
发送文件插件
|
|
18
15
|
} from "./chunk-RRUUWHTF.js";
|
|
19
16
|
import {
|
|
20
17
|
表单解析插件
|
|
21
|
-
} from "./chunk-
|
|
18
|
+
} from "./chunk-NSW5G2QM.js";
|
|
22
19
|
import {
|
|
23
20
|
WebSocket插件
|
|
24
|
-
} from "./chunk-
|
|
21
|
+
} from "./chunk-2SPIZUHY.js";
|
|
22
|
+
import {
|
|
23
|
+
中文路径支持插件
|
|
24
|
+
} from "./chunk-4BFNDHRC.js";
|
|
25
25
|
import {
|
|
26
26
|
接口测试
|
|
27
27
|
} from "./chunk-N7TPWCQ5.js";
|
|
28
|
-
import {
|
|
29
|
-
插件
|
|
30
|
-
} from "./chunk-43GZE5YL.js";
|
|
31
28
|
import {
|
|
32
29
|
服务器
|
|
33
|
-
} from "./chunk-
|
|
30
|
+
} from "./chunk-XE7ESQZU.js";
|
|
34
31
|
import {
|
|
35
32
|
EXPORT_TYPE
|
|
36
33
|
} from "./chunk-ZF7EC2OM.js";
|
|
@@ -46,19 +43,22 @@ import {
|
|
|
46
43
|
常用形式转换器,
|
|
47
44
|
接口结果转换器
|
|
48
45
|
} from "./chunk-AEG7V7QY.js";
|
|
49
|
-
import "./chunk-
|
|
46
|
+
import "./chunk-567N5OFV.js";
|
|
50
47
|
import {
|
|
51
48
|
构造元组,
|
|
52
49
|
构造对象
|
|
53
50
|
} from "./chunk-YMH6HJJF.js";
|
|
54
|
-
import "./chunk-
|
|
51
|
+
import "./chunk-ZIVQ3WZA.js";
|
|
52
|
+
import {
|
|
53
|
+
插件
|
|
54
|
+
} from "./chunk-43GZE5YL.js";
|
|
55
55
|
import {
|
|
56
56
|
接口
|
|
57
57
|
} from "./chunk-JMR7QAHO.js";
|
|
58
58
|
import {
|
|
59
59
|
接口逻辑,
|
|
60
60
|
接口逻辑Base
|
|
61
|
-
} from "./chunk-
|
|
61
|
+
} from "./chunk-LZKS5TUK.js";
|
|
62
62
|
export {
|
|
63
63
|
EXPORT_TYPE,
|
|
64
64
|
GET\u53C2\u6570\u89E3\u6790\u63D2\u4EF6,
|
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.2",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"exports": {
|
|
6
6
|
"require": "./dist/cjs/index.cjs",
|
|
@@ -59,7 +59,7 @@
|
|
|
59
59
|
"prettier": "3.3.3",
|
|
60
60
|
"prettier-plugin-organize-imports": "^4.1.0",
|
|
61
61
|
"prettier-plugin-packagejson": "^2.5.2",
|
|
62
|
-
"tsup": "^8.0
|
|
62
|
+
"tsup": "^8.5.0",
|
|
63
63
|
"typescript": "<5.6.0"
|
|
64
64
|
},
|
|
65
65
|
"peerDependencies": {
|
|
@@ -1,80 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __defProp = Object.defineProperty;
|
|
3
|
-
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
4
|
-
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
5
|
-
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
6
|
-
var __export = (target, all) => {
|
|
7
|
-
for (var name in all)
|
|
8
|
-
__defProp(target, name, { get: all[name], enumerable: true });
|
|
9
|
-
};
|
|
10
|
-
var __copyProps = (to, from, except, desc) => {
|
|
11
|
-
if (from && typeof from === "object" || typeof from === "function") {
|
|
12
|
-
for (let key of __getOwnPropNames(from))
|
|
13
|
-
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
14
|
-
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
15
|
-
}
|
|
16
|
-
return to;
|
|
17
|
-
};
|
|
18
|
-
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
19
|
-
|
|
20
|
-
// src/global/web-socket-management.ts
|
|
21
|
-
var web_socket_management_exports = {};
|
|
22
|
-
__export(web_socket_management_exports, {
|
|
23
|
-
WebSocket\u7BA1\u7406\u5668: () => WebSocket\u7BA1\u7406\u5668
|
|
24
|
-
});
|
|
25
|
-
module.exports = __toCommonJS(web_socket_management_exports);
|
|
26
|
-
|
|
27
|
-
// src/global/global.ts
|
|
28
|
-
var import_ts_global = require("@lsby/ts-global");
|
|
29
|
-
var import_ts_log = require("@lsby/ts-log");
|
|
30
|
-
var Global = new import_ts_global.GlobalService([
|
|
31
|
-
new import_ts_global.GlobalAsyncItem("log", async () => {
|
|
32
|
-
return new import_ts_log.Log("@lsby:net-core");
|
|
33
|
-
}),
|
|
34
|
-
new import_ts_global.GlobalAsyncItem("WebSocket\u7BA1\u7406\u5668", async () => {
|
|
35
|
-
return new WebSocket\u7BA1\u7406\u5668({});
|
|
36
|
-
})
|
|
37
|
-
]);
|
|
38
|
-
|
|
39
|
-
// src/global/web-socket-management.ts
|
|
40
|
-
var WebSocket\u7BA1\u7406\u5668 = class {
|
|
41
|
-
constructor(\u8FDE\u63A5\u8868) {
|
|
42
|
-
this.\u8FDE\u63A5\u8868 = \u8FDE\u63A5\u8868;
|
|
43
|
-
}
|
|
44
|
-
log = Global.getItem("log").then((a) => a.extend("@lsby:net-core").extend("WebSocket\u7BA1\u7406\u5668"));
|
|
45
|
-
\u6E05\u7406\u51FD\u6570\u8868 = {};
|
|
46
|
-
async \u589E\u52A0\u8FDE\u63A5(id, ws\u53E5\u67C4) {
|
|
47
|
-
this.\u8FDE\u63A5\u8868[id] = ws\u53E5\u67C4;
|
|
48
|
-
}
|
|
49
|
-
async \u67E5\u8BE2\u8FDE\u63A5\u5B58\u5728(id) {
|
|
50
|
-
return this.\u8FDE\u63A5\u8868.hasOwnProperty(id) ? true : false;
|
|
51
|
-
}
|
|
52
|
-
async \u8BBE\u7F6E\u6E05\u7406\u51FD\u6570(id, \u6E05\u7406\u51FD\u6570) {
|
|
53
|
-
if (this.\u8FDE\u63A5\u8868.hasOwnProperty(id) === false)
|
|
54
|
-
return;
|
|
55
|
-
this.\u6E05\u7406\u51FD\u6570\u8868[id] = \u6E05\u7406\u51FD\u6570;
|
|
56
|
-
}
|
|
57
|
-
async \u83B7\u5F97\u53E5\u67C4(id) {
|
|
58
|
-
return this.\u8FDE\u63A5\u8868[id] ?? null;
|
|
59
|
-
}
|
|
60
|
-
async \u5220\u9664\u8FDE\u63A5(id) {
|
|
61
|
-
let log = await this.log;
|
|
62
|
-
let \u6E05\u7406\u51FD\u6570 = this.\u6E05\u7406\u51FD\u6570\u8868[id];
|
|
63
|
-
try {
|
|
64
|
-
this.\u8FDE\u63A5\u8868[id]?.close(1e3, "\u670D\u52A1\u5668\u4E3B\u52A8\u5173\u95ED");
|
|
65
|
-
} catch (err) {
|
|
66
|
-
await log.error(`\u5173\u95ED WebSocket \u53E5\u67C4\u5931\u8D25, id: ${id}, \u9519\u8BEF: ${err}`);
|
|
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}`);
|
|
72
|
-
}
|
|
73
|
-
delete this.\u8FDE\u63A5\u8868[id];
|
|
74
|
-
delete this.\u6E05\u7406\u51FD\u6570\u8868[id];
|
|
75
|
-
}
|
|
76
|
-
};
|
|
77
|
-
// Annotate the CommonJS export names for ESM import in node:
|
|
78
|
-
0 && (module.exports = {
|
|
79
|
-
WebSocket\u7BA1\u7406\u5668
|
|
80
|
-
});
|
|
@@ -1,16 +0,0 @@
|
|
|
1
|
-
import { WebSocket } from 'ws';
|
|
2
|
-
|
|
3
|
-
type id = string;
|
|
4
|
-
declare class WebSocket管理器 {
|
|
5
|
-
private 连接表;
|
|
6
|
-
private log;
|
|
7
|
-
private 清理函数表;
|
|
8
|
-
constructor(连接表: Record<id, WebSocket | null>);
|
|
9
|
-
增加连接(id: id, ws句柄: WebSocket): Promise<void>;
|
|
10
|
-
查询连接存在(id: string): Promise<boolean>;
|
|
11
|
-
设置清理函数(id: string, 清理函数: () => Promise<void>): Promise<void>;
|
|
12
|
-
获得句柄(id: id): Promise<WebSocket | null>;
|
|
13
|
-
删除连接(id: string): Promise<void>;
|
|
14
|
-
}
|
|
15
|
-
|
|
16
|
-
export { WebSocket管理器 };
|
|
@@ -1,16 +0,0 @@
|
|
|
1
|
-
import { WebSocket } from 'ws';
|
|
2
|
-
|
|
3
|
-
type id = string;
|
|
4
|
-
declare class WebSocket管理器 {
|
|
5
|
-
private 连接表;
|
|
6
|
-
private log;
|
|
7
|
-
private 清理函数表;
|
|
8
|
-
constructor(连接表: Record<id, WebSocket | null>);
|
|
9
|
-
增加连接(id: id, ws句柄: WebSocket): Promise<void>;
|
|
10
|
-
查询连接存在(id: string): Promise<boolean>;
|
|
11
|
-
设置清理函数(id: string, 清理函数: () => Promise<void>): Promise<void>;
|
|
12
|
-
获得句柄(id: id): Promise<WebSocket | null>;
|
|
13
|
-
删除连接(id: string): Promise<void>;
|
|
14
|
-
}
|
|
15
|
-
|
|
16
|
-
export { WebSocket管理器 };
|