# nodeWebSocketProtobuf **Repository Path**: Nsir/node-web-socket-protobuf ## Basic Information - **Project Name**: nodeWebSocketProtobuf - **Description**: nodejs + websocket + protobufjs 测试 - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2021-05-21 - **Last Updated**: 2022-06-06 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README nodejs + websocket + protobufjs ## 前端 连接发送: ``` javascript this.$socket.initWebsocket('ws://192.168.3.21:9009/ws', this.wsMessage, this.wsError) sendMessage () { // 跟后端协商,需要什么参数数据给后台 const message = protoHelper.Message.create() message.dataType = protoHelper.Message.DataType.ControlType message.control = { 'forward': 10000, // 向前 'backward': 2, // 向后 'left': 3, // 向左 'right': 4// 向右 } // message.payload = 'data_type' console.log(message) let dataBuffer = protoHelper.Message.encode(message).finish() // debugger // 发起ws请求 this.$socket.sendWebsocket(dataBuffer) }, // ws连接成功,后台返回的ws数据,组件要拿数据渲染页面等操作 wsMessage (data) { // const dataJson = data console.log('data:', data) // debugger let decodeData = protoHelper.Message.decode(new Uint8Array(data)) console.log('decodeData:', decodeData) let obj = protoHelper.Message.toObject(decodeData, { // dataType: Number, // control: Object json: true }) console.log('obj--:', obj) }, ```