diff options
Diffstat (limited to 'websocket_client.ts')
| -rw-r--r-- | websocket_client.ts | 37 |
1 files changed, 18 insertions, 19 deletions
diff --git a/websocket_client.ts b/websocket_client.ts index 7ffdbc0..7e02982 100644 --- a/websocket_client.ts +++ b/websocket_client.ts @@ -58,12 +58,12 @@ export class WuiWebSocketClient { // request-response. // async Send(req: WuiWebSocketRequest): Promise<WuiResponseInterface> { - return new Promise((resolve, reject) => { - let wuiRes: WuiResponseInterface = { + return new Promise((resolve) => { + const wuiRes: WuiResponseInterface = { code: 0, message: "", }; - let reqQueue: RequestQueue = { + const reqQueue: RequestQueue = { req: req, cbSuccess: (res: WuiWebSocketResponse) => { wuiRes.code = res.code; @@ -87,26 +87,26 @@ export class WuiWebSocketClient { connect() { this.conn = new WebSocket(this.address); - this.conn.onclose = (ev: CloseEvent) => { - this.onClose(ev); + this.conn.onclose = () => { + this.onClose(); }; - this.conn.onerror = (ev: Event) => { - this.onError(ev); + this.conn.onerror = () => { + this.onError(); }; this.conn.onmessage = (ev: MessageEvent) => { this.onMessage(ev); }; - this.conn.onopen = (ev: Event) => { - this.onOpen(ev); + this.conn.onopen = () => { + this.onOpen(); }; } // onClose handle connection closed by cleaning up the request // queue. - onClose(ev: CloseEvent) { - for (let x = 0; x < this.requestQueue.length; x++) { - this.requestQueue[x].cbFail("connection closed"); - } + onClose() { + this.requestQueue.forEach((reqq) => { + reqq.cbFail("connection closed"); + }); this.isOpen = false; this.error = "connection is closed by server"; @@ -121,30 +121,29 @@ export class WuiWebSocketClient { } } - onError(ev: Event) { + onError() { if (this.opts.onError) { this.opts.onError(); } } onMessage(ev: MessageEvent) { - let res: WuiWebSocketResponse = JSON.parse(ev.data); + const res: WuiWebSocketResponse = JSON.parse(ev.data); - for (let x = 0; x < this.requestQueue.length; x++) { - let reqq = this.requestQueue[x]; + this.requestQueue.forEach((reqq, x) => { if (reqq.req.id === res.id) { reqq.cbSuccess(res); this.requestQueue.splice(x, 1); return; } - } + }); if (this.opts.onBroadcast && res.id == 0) { this.opts.onBroadcast(res); } } - onOpen(ev: Event) { + onOpen() { this.isOpen = true; this.error = ""; |
