# client-ws

> 适用于websocket连接的前端包

Latest version **0.0.12** (published 2022-06-01) · ISC license · 0 weekly downloads

## Install

```sh
npm install client-ws
pnpm add client-ws
yarn add client-ws
bun add client-ws
```

## Health

**Score 20/100 (F)** — status: abandoned.

Positive: esm support; no vulnerabilities.

Warnings: low downloads; no types; pre 1.0.

Negative: abandoned; low maintenance score.

## Facts

| | |
|---|---|
| Version | 0.0.12 |
| Published | 2022-06-01 |
| First published | 2022-02-16 |
| Weekly downloads | 0 |
| License | ISC |
| TypeScript types | none |
| Module format | ESM + CommonJS |
| Dependencies | 0 |
| Unpacked size | 32 KB |
| Known vulnerabilities | 0 |
| Install scripts | no |
| GitHub stars | 0 |
| Author | zackery |
| Maintainers | zackkai |
| Keywords | websocket, ws, socket |

## Links

- npm: https://www.npmjs.com/package/client-ws
- Repository: https://github.com/ZackeryKai/client-ws
- Issues: https://github.com/ZackeryKai/client-ws/issues
- npm.io page: https://npm.io/package/client-ws

## Alternatives

- [@opentelemetry/exporter-zipkin](https://npm.io/package/@opentelemetry/exporter-zipkin.md) — 14.8M weekly downloads
- [pusher-js](https://npm.io/package/pusher-js.md) — 2.0M weekly downloads
- [browserify](https://npm.io/package/browserify.md) — 1.7M weekly downloads
- [sqs-consumer](https://npm.io/package/sqs-consumer.md) — 1.7M weekly downloads
- [@sanity/eventsource](https://npm.io/package/@sanity/eventsource.md) — 930.8K weekly downloads

## Recent versions

- 0.0.12 (latest) — 2022-06-01
- 0.0.10 — 2022-03-01
- 0.0.8 — 2022-02-23
- 0.0.7 — 2022-02-23
- 0.0.6 — 2022-02-18
- 0.0.5 — 2022-02-18
- 0.0.4 — 2022-02-16
- 0.0.3 — 2022-02-16

## README

### Websocket连接配置

#### 使用方式
```javascript
import SocketIO from 'client-ws'

const socket = new SocketIO([options])

// 发送信息
socket.emitData(...)

// 或者

class MySocket extends SocketIO {
    constructor() {
        super([options])
    }

    // 发送websocket信息
    emit () {
        this.emitData(...)
    }
}

```

##### 配置项[Options]

|字段|是否必传|默认值|说明|
|-|-|-|-|
|url|[Y]|||
|protocol|[Y]|ws|可配置ws、wss|
|callback|[N]|  |websocket接受信息的回调函数，入参evt|
|heartbeatData|[N]|{ cmd: 'heart', module: 'ping' }|心跳数据|
|isHeartbeatInspect|[N]|false|是否心跳检测|
|heartbeatDelay|[N]|5|心跳检测间隔，默认5s|
|autoReconnect|[N]|false|是否断开后自动重连|
|socketEvt|[N]|  |websocket事件, 改值为一个对象，详细参考下述说明|

##### websocket事件[socketEvt]
|字段|是否必传|类型|说明|是否需要返回值|入参|
|-|-|-|-|-|-|
|before|[N]|Function|实例化websocket对象之前，返回一个布尔, true则创建，false取消| Boolean |无|
|open|[N]|Function|websocket连接成功后触发open事件调用|void|websocketCode|
|message|[N]|Function|websocket接收到数据调用|void|websocketCode, data|
|close|[N]|Function|websocket关闭时调用|void|websocketCode, [data]|
|error|[N]|Function|websocket触发错误时调用|void|websocketCode, [data]|


##### 其他数据类型判断方法

```javascript
import * as Utils from "client-ws/dist/utils"

Utils.isNull(data)
Utils.isUndefined(data)
Utils.isFunction(data)
Utils.isObject(data)
Utils.isText(data)
Utils.isArray(data)
Utils.isTypeOf(data, type)
```

---
_Source: https://npm.io/package/client-ws · Machine-readable twin of the npm.io package page. Health data is recomputed on every publish._
