🔥码云GVP开源项目 12k star Uniapp+ElementUI 功能强大 支持多语言、二开方便! 广告
> 单聊可用于一对一在线聊天、在线客服、系统消息等场景 WS地址:**ws://im.xiangbaicheng.com/chat** 请求方式:**GET** 请求参数: | 参数 | 类型 | 含义 | 取值 | | --- | --- | --- | --- | | token | String | 授权码 | 通过服务端API获取,参照[获取授权码](https://console.xiangbaicheng.com/doc/token.html "获取授权码") | #### 数据格式 | 参数 | 类型 | 含义 | 取值 | | --- | --- | --- | --- | | type | String | 消息类型,single-单聊,group-群聊,join-加群,leave-退群 | 单聊时固定为single | | source | String/Number | 发送者ID或其他唯一字段 | 取值需要具有唯一性 | | target | String/Number | 接收者ID或其他唯一字段 | 取值需要具有唯一性 | | msgType | String | 消息类型,默认text | 支持自定义消息类型,如voice、image、map等 | | extra | Mix | 额外数据,支持任意可解析的格式 | 示例见[额外数据格式示例](https://console.xiangbaicheng.com/doc/single.html#backage "额外数据格式示例") | #### 数据包格式示例 | 参数 | 类型 | 含义 | | --- | --- | --- | | msgId | String/Number | 消息ID | | timestamp | Integer | 发送消息时的时间戳 | #### 发送消息 ``` socket.onopen = function (){     // 消息数据包     let msgData = {         msgId: 1,         timestamp: '1611065986'     }     // 发送的消息     let data = {         type: 'single',         source: 1,         target: 2,         msg: msgData     }     // 发送消息     socket.onopen = function (){         socket.send(data);     } }; ``` #### 接收消息 ``` socket.onmessage = function (res){     // 基于发送消息数据格式进行数据解析     let data = JSON.parse(res.data);     // 其他逻辑处理 }; ```