美文网首页
关于saga+websocket+protobufjs我不得不说

关于saga+websocket+protobufjs我不得不说

作者: 桜花約束 | 来源:发表于2019-06-13 17:08 被阅读0次

前段时间项目要求需要用saga+websocket+protobufjs,当时对这些还是不是很了解,走了一些弯路,不过最后还算是完成了。

关于整个流程梳理:

  • 进入页面时候,页面dispatch一个消息到saga告诉saga需要连接websocket
  • saga接收到消息,开始进行websocket连接


    image
  • 连接好了之后就可以进行数据传输等了;按照ws的几个操作,onopen、onmessage等等


    image

最重要的就是:数据转化部分

potobuf我们怎样在前端接收解析呢?
  • 安装protobufjs:npm install protobufjs
  • 拿到和后台共同定义的potobuf文件;放在saga文件夹下(我是酱紫放的)


    image
  • 将potobuf文件转化成json或者js;我这里是转化成json应用的
    node pbjs -t json .proto的文件目录 -o 生成的json或者js放置的文件目录(包含文件名)
  • 最后一步就是在onmessage中引用转化过来的json或者js对后端传过来的数据进行解析转化成可用的数据啦
        var jsonDescriptor = require("./msg.json");
        var root = protobuf.Root.fromJSON(jsonDescriptor);
        var messageFile = root.lookupType("Web.Message");
        var buf = new Uint8Array(e.data);
        var message = messageFile.decode(buf);
        console.log(message.classId);

当时写完了之后;发现其实很简单,但是当时由于没有了解用过,并且找相关资料的时候遇到问题;所以当时还是花了一些时间。总结,希望对也是同样情况的有一点帮助啦!

相关文章

  • 关于saga+websocket+protobufjs我不得不说

    前段时间项目要求需要用saga+websocket+protobufjs,当时对这些还是不是很了解,走了一些弯路,...

  • 关于默契我不得不说的话

    默契是什么?是你不说,我也都懂。 默契是什么?是胜则举杯相庆,败则拼死相救。 默契是高效团队的一个重要特征。 默契...

  • 关于那个女人,我不得不说

    这两天心里一直难受,仿佛有什么东西堵着,不吐不快。 事情是这样的,修养课上,讲人生这部分时,我选择了一个案例让学生...

  • 关于胸器,我不得不说!

    当然也不难看,但你要说有多好看,有多美,我不觉得,而且这种形态的胸也就只能穿内衣和睡衣的时候还不感觉丑,其...

  • 自由诗‖我不说

    文/王小方 关于亲情我不说关于友情我不说关于爱情我也不说 关于真理我不说关于善良我不说关于智慧我也不说 关于生我不...

  • 关于盗版,不得不说

    作者:张约翰 最近麦种传道会追查到某些人扫描其出版的实体书并在QQ群大量分享,另外也有些售卖牟利。后来某些人为了证...

  • 这才是最好的婚姻

    不得不说,自从在公号上写文章以来,我收到很多读者的留言都是关于婚姻、关于爱情的,我也不得不被推上“情感专家”“知心...

  • 思想与实践

    不得不说,学习2022新课标成了这个暑假老师们最热议的话题;不得不说,关于新课标️️中提到的“学习任务群”的...

  • 我不得不说

    我不得不说,世上能有许多。要拼命的生活,顾不上犯错!得过且过,为了什么?一生坎坷,受尽折磨。懒得去做,罗里罗索! ...

  • 关于缺水不得不说事

    贾宝玉说:女人都是水做的。其实对于所有人来说,皮肤都是水分含量越高,皮肤状态越好,相应的,皮肤水分流失越多,肌肤就...

网友评论

      本文标题:关于saga+websocket+protobufjs我不得不说

      本文链接:https://www.haomeiwen.com/subject/vgasfctx.html