青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

Benjamin

靜以修身,儉以養德,非澹薄無以明志,非寧靜無以致遠。
隨筆 - 398, 文章 - 0, 評論 - 196, 引用 - 0
數據加載中……

cocos creator使用protobufjs

1、npm install -g protobufjs 安裝protobufjs
2、
protobufjs\dist中找到protobuf.js文件,并作為插件拖放到Creator中(注意,必須作為插件,并且是四個選項都必須選中,否則將報錯!)
3、定義msg.proto
文件,并將prot文件轉成對應的js版本.
    命令:
::protobuf.js版本6.x生成js文件 pbjs -t static-module -w commonjs -o Msg.js msg.proto        msg.proto是proto文件,Msg.js是生成的js文件
4、
修改Msg.js文件,注釋掉var $protobuf = require("protobufjs/minimal");
   新增var $protobuf = protobuf;
5、將Msg.js拖放到Creator中,寫腳本:
    var ipPort = "ws://" + this.ip + ":" + this.port;
    console.log(ipPort);
   this.ws = new WebSocket(ipPort);
   this.ws.binaryType = 'arraybuffer'; //這里設置為發送二進制數據
   this.ws.onopen = function (event) {
      console.log("open");
       //打開成功立刻進行發送
       if (self.ws.readyState === WebSocket.OPEN) {
           let message = msg.Login.create({name: "hello", pwd: "pwd"});//構造對象
           let messageBuf = msg.Login.encode(message).finish(); //獲取二進制數據,一定要注意使用finish函數
           self.ws.send(messageBuf); //發送二進制數據
       }
   };
   this.ws.onmessage = function (event) {
       console.log("onmessage : " + event.data);
   };
   this.ws.onerror = function (event) {
       console.log("on error :", event.data);
   };
   this.ws.onclose = function (event) {
       console.log("onclose");
   };
6、組包使用ArrayBuffer這個數據結構,它示通用的、固定長度的原始二進制數據緩沖區。
  ArrayBuffer 不能直接操作,而是要通過類型數組對象DataView 對象來操作,它們會將緩沖區中的數據表示為特定的格式,并通過這些格式來讀寫緩沖區的內容。
     let message = msg.Login.create({name: "hello", pwd: "pwd"});
     let msgEncode = msg.Login.encode(message).finish(); //一定要注意使用finish函數
     //二進制數據的長度+一個short的長度
    var sendBuf = new ArrayBuffer(msgEncode.length + 2);
    var dv = new DataView(sendBuf);
    dv.setInt16(0,1); //寫入一個short值 起始位置以byte為計數的指定偏移量(byteOffset)處儲存一個16-bit數
    //將二進制數據寫入
    var u8view = new Uint8Array(sendBuf, 2); //跳過一個short的距離
    for (var i = 0, strLen = msgEncode.length; i < strLen; ++i){
         u8view[i] = msgEncode[i];
    }
    self.ws.send(sendBuf);
7、解包:
     this.ws.onmessage = function (event) {
            console.log("onmessage : " + event.data);
    var recv_data = event.data
    var dv = new DataView(recv_data);
    var len = dv.getInt16(0) //相對于起始位置偏移 n 個字節處開始,獲取一個16-bit數(短整型,2個字節).
   //消息體
   var data_body = new Uint8Array(recv_data, 4); 
   //轉成PB消息體
  let message = msg.Login.decode(data_body);//構造對象
8、解包格式應和組包格式一樣;cocos下經過命令處理后的消息js文件不能作為插件使用,使用的時候切記
9、https://github.com/zimv/websocket-heartbeat-js,這是一個封裝好的帶有心跳和重連websocket,可以直接拿來使用

posted on 2019-07-27 16:48 Benjamin 閱讀(1600) 評論(0)  編輯 收藏 引用 所屬分類: 雜談

青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            毛片av中文字幕一区二区| 欧美视频一区二区三区四区| 麻豆久久婷婷| 久久视频在线免费观看| 久久精品五月| 久久综合网hezyo| 蘑菇福利视频一区播放| 欧美成年人在线观看| 亚洲国产精品专区久久| 久久蜜桃av一区精品变态类天堂| 久久―日本道色综合久久| 美女免费视频一区| 亚洲激情一区| 亚洲制服少妇| 老巨人导航500精品| 欧美精品播放| 国产欧美日韩在线| 亚洲日本va午夜在线影院| 亚洲深夜福利视频| 久久日韩粉嫩一区二区三区| 亚洲精品乱码久久久久| 国产精品99久久久久久www| 久久精品av麻豆的观看方式 | 亚洲精品永久免费| 亚洲在线不卡| 欧美肥婆在线| 亚洲欧美日韩综合一区| 欧美成人a视频| 国产精品资源在线观看| 亚洲国产精品福利| 午夜在线不卡| 亚洲激情国产精品| 欧美制服丝袜| 国产精品乱看| 久久香蕉国产线看观看av| 欧美日韩激情小视频| 欧美激情视频在线播放| 国语自产精品视频在线看| 国自产拍偷拍福利精品免费一| 久久亚洲欧洲| 久久九九精品| 亚洲欧美视频一区| 亚洲日本中文字幕免费在线不卡| 亚洲性感美女99在线| 久久久久国产精品www| 欧美日韩一区二区三| 伊人狠狠色丁香综合尤物| 亚洲欧美一区二区三区久久 | 国产综合色产| 亚洲一区二区三区精品在线观看 | 久久久久久午夜| 日韩一级裸体免费视频| 理论片一区二区在线| 韩国视频理论视频久久| 欧美一区二区三区在线播放| 在线亚洲激情| 欧美日韩在线播放一区| 日韩午夜电影在线观看| 最新亚洲电影| 欧美日本国产一区| 亚洲亚洲精品在线观看| av成人天堂| 国产精品久久久久久久久| 亚洲专区在线| 亚洲制服av| 国内精品视频在线观看| 老色批av在线精品| 免费视频一区| 亚洲久久一区二区| 一本色道久久综合亚洲91| 欧美三级乱人伦电影| 午夜日韩激情| 久久精品一区四区| 91久久香蕉国产日韩欧美9色 | 欧美黄色免费| 欧美成人精品一区| 一区二区三区你懂的| aa国产精品| 国产日韩精品电影| 欧美 日韩 国产 一区| 欧美激情亚洲精品| 亚洲免费在线观看视频| 欧美一区二区三区视频在线| 在线成人性视频| 91久久精品国产91久久性色| 欧美日韩国产麻豆| 久久精品99久久香蕉国产色戒| 久久精品道一区二区三区| 亚洲精品视频在线播放| 亚洲视频在线观看免费| 麻豆精品国产91久久久久久| 亚洲精品偷拍| 国产精品美女在线| 老巨人导航500精品| 欧美精品久久久久久久| 午夜精品久久久久久久久久久久| 欧美亚洲视频| 亚洲免费久久| 亚洲欧美视频在线观看视频| 亚洲国产日韩欧美一区二区三区| 亚洲美女av电影| 国内精品一区二区三区| 一本久久综合亚洲鲁鲁五月天| 国产精品日韩久久久久| 亚洲国产精品成人| 韩国成人福利片在线播放| 999在线观看精品免费不卡网站| 国产综合久久| 亚洲一区二区视频在线观看| 亚洲三级性片| 久久久五月天| 久久精品国产第一区二区三区最新章节| 欧美成人午夜免费视在线看片 | 国产精品视频免费观看www| 免费中文日韩| 国产午夜亚洲精品羞羞网站| 亚洲精品久久久久| 在线观看亚洲视频啊啊啊啊| 亚洲一区二区三区四区视频| 亚洲精品欧美日韩| 久久久青草青青国产亚洲免观| 欧美在线国产| 欧美三级电影一区| 亚洲乱码久久| 99亚洲一区二区| 欧美激情一区二区三区在线| 欧美国产日韩一二三区| 精品成人在线视频| 久久国产乱子精品免费女 | 亚洲三级免费观看| 亚洲电影免费观看高清完整版在线| 亚洲欧美成人一区二区在线电影| 一区二区三区成人精品| 欧美国产视频日韩| 亚洲国产小视频在线观看| 亚洲激情在线视频| 蜜臀av在线播放一区二区三区| 美女图片一区二区| 亚洲第一在线| 欧美二区在线| 亚洲黄色成人久久久| 亚洲精品自在久久| 欧美精品系列| 亚洲理伦在线| 亚洲一区二区精品在线| 国产精品免费一区豆花| 亚洲一区二区三区四区中文 | 亚洲欧美日韩精品一区二区| 亚洲砖区区免费| 国产欧美一区二区精品仙草咪| 久久综合精品国产一区二区三区| 久久精品中文字幕一区| 免费亚洲电影在线观看| 亚洲国产精品国自产拍av秋霞 | 亚洲一区观看| 久久成人精品无人区| 激情亚洲网站| 欧美国产日韩二区| 一区二区冒白浆视频| 久久精品成人| 亚洲国产免费看| 欧美午夜免费影院| 欧美一区三区三区高中清蜜桃| 蜜臀91精品一区二区三区| 日韩一区二区精品视频| 国产精品人人做人人爽人人添| 欧美在线视频免费观看| 亚洲黄色小视频| 欧美一区二区视频免费观看| 亚洲福利在线视频| 欧美日韩在线视频一区| 欧美一级日韩一级| 最新国产乱人伦偷精品免费网站 | 久久看片网站| 日韩午夜激情电影| 久久天堂精品| 亚洲图片在区色| 一区在线免费| 国产精品国产三级国产专区53 | 国产精品免费视频xxxx| 男男成人高潮片免费网站| 亚洲综合成人在线| 亚洲精品国产无天堂网2021| 久久精品国产综合| 国产精品你懂的在线| 美国十次成人| 欧美亚洲在线| 在线亚洲美日韩| 欧美高清在线观看| 久久精品二区亚洲w码| 亚洲自拍偷拍视频| 亚洲日本电影| 在线免费高清一区二区三区| 国产精品欧美一区二区三区奶水 | 亚洲电影在线免费观看| 欧美一区三区二区在线观看| 妖精成人www高清在线观看| 伊人久久噜噜噜躁狠狠躁| 国产欧美日韩伦理| 国产精品久久久久久影视|