0.0.7 • Published 4 years ago

socket.c v0.0.7

Weekly downloads
-
License
ISC
Repository
-
Last release
4 years ago

socket.c

#####致力于简单化socket连接,内置封装基础心跳包,重连等程序。开发人员只关心自己业务逻辑进行开发

快速使用

浏览器

    <script  scr="./dist/socket.c.min.js" />
    <script>
        var ws = SocketC.createConnection("ws://127.0.0.1:9999")
    </script>

webpack

  • 命令行安装
    npm i SocketC
  • 在文件中
    import { createConnection } from 'socket.c'

    const ws = createConnection("ws://127.0.0.1:9999") 

API

  • createConnection(config) 创建一个webSocket连接, 并返回一个socket实例。 config参数具有以下属性
    	```js
    		{
    			url: '', // url
    			heartBeat: ['PING', 'PENG'], //心跳包字段
    			heartMaxNumber: 3, //心跳包最大离线次数
    			hearTinterval: 10000, //心跳包发生间隔
    			sendType: 'JSON', //发送的数据格式,用于发送数据前对数据处理
    			messageType: 'JSON', //消息数据格式,用于接收数据后对数据的处理
    			restartMaxNumber: 3, //最大重连数
    			restartTinterval: 3000
    		}
    	```
  • closeConnection(socket) 关闭socket的连接
  • destroyConnection 关闭并销毁socket实例

config 可选参数

字段类型作用默认值
urlstringwebsocket连接地址''
heartBeatArray['PING', 'PENG'] 心跳包交互字段,heartBeat0客户端发送字段,heartBeat1服务端回复字段'PING', 'PENG'
heartMaxNumberNumber心跳包最大离线次数,当服务端回复连续掉包次数大于此值时候会自动断开socket连接,并进行重新连接3
hearTintervalNumber心跳包发送间隔10000
sendTypestring对发送后端的消息进行处理,可选值有 'STRING','JSON','BUFF'。设为STRING时候会传入数据处理为字符串在提交,设为JSON时候会对发送数据前进行校验是否为JSON,然后再转为JSON字符串进行数据到服务端。设为BUFF时候会对数据发送前进行校验是否为BUFF,然后进行数据提交JSON
messageTypestring说明后端回复数据的类型,可选值有 'STRING','JSON','BUFF'。设为STRING时候不会进行任何处理,接收数据不为STRING将数据串化。设为JSON会接收数据进行JSON.parse处理,接收数据不为JSON字符串将过滤。设为 BUFF不会对数据进行任何处理JSON
restartMaxNumbernumber最大重连次数3
restartTintervalnumber重连机制间隔,单位ms3000

socket 实例

具有以下方法

  • send(msg) 向服务端发送数据
  • subscribe(callback) 订阅服务端消息,当接收到服务端消息后进行订阅发布,回调传入参数为消息实体。返回订阅ID

  • unSubscribe(id) 取消订阅,id = 订阅ID

  • close() 手动关闭连接

  • destroy()

手动销毁实例

###socke t实例的生命钩子

  • onOpen 当连接socket成功触发的钩子

  • onMessage 当接收到访问端数据后触发的方法,传入参数为消息实体

  • onClose 当连接已超过最大重连次数或被手动关闭

  • onRes 当socket重新连接前触发的钩子,传如参数为实例对象

  • onDestroy 销毁前触发钩子
0.0.7

4 years ago

0.0.5

4 years ago

0.0.4

4 years ago

0.0.6

4 years ago

0.0.3

4 years ago

0.0.2

4 years ago

0.0.1

4 years ago