grpc-web客户端接收流式数据以及主动断开

通过监听实例化的流数据对象可以持续获取数据:

		//实例化rpc流数据对象方法
		const getDataSysInfoStream = () => {
		  const req = new proto.CommonRequest();
		  return client.getDataSysInfo(req, {}, (err, res) => {
		    if (err?) {
		      console.log("err", err);
		    }
		  });
		};
      //调用方法获取实例
      const dataSysInfoStream = getDataSysInfoStream();
      // 持续获取流数据并处理
      dataSysInfoStream.on("data", (info) => {
        // console.log("数据流info", info);
        //  xxxx
        }
      });
       dataSysInfoStream.on('error',{
	      // 错误处理
	      // xxxxx
     	 })
      // 主动断开流数据
      dataSysInfoStream.cancel()
     

实例化对象中的cancel方法可以取消调用,但是会导致调用以错误结束,所以需要监听‘error’以便做错误处理。

你可能感兴趣的:(前端,javascript,rpc)