久久久久久久av_日韩在线中文_看一级毛片视频_日本精品二区_成人深夜福利视频_武道仙尊动漫在线观看

如何使用 socket.io 發送二進制數據?

How to send binary data with socket.io?(如何使用 socket.io 發送二進制數據?)
本文介紹了如何使用 socket.io 發送二進制數據?的處理方法,對大家解決問題具有一定的參考價值,需要的朋友們下面隨著小編來一起學習吧!

問題描述

所以我在 node.js(Js 客戶端和 Android 客戶端)中使用 socket.io 發送二進制數據時遇到了問題.

so I have been having real trouble sending binary data with socket.io in node.js (Js client and Android client).

沒有太多信息:

http://socket.io/blog/introducing-socket-io-1-0/

http://socket.io/get-started/chat/

我需要使用 socket io 來發送我創建和填充的二進制數組.

I need to use socket io to send a binary array, that I create and fill.

他們給出的唯一代碼如下:

the only code they give is the following:

var socket = new WebSocket('ws://localhost');
socket.binaryType = 'arraybuffer';
socket.send(new ArrayBuffer);

我的答案如下.

推薦答案

終于可以在 JS 和 Android ( Java ) 上運行了,所以我決定和大家分享一下.

Finally I have it working with JS and Android ( Java ), so I decided to share it with you guys.

讓我們從服務器代碼開始:(Node js)

Let's start with the Server Code: (Node js)

var http = require('http');

var app = http.createServer(function ejecute(request, response){});
var io = require('socket.io').listen(app);


io.on('connection', function(socket) {
        socket.on('message', function(data){
            console.log("recieved data:");
            console.log(data);

            var bufArr = new ArrayBuffer(4);
            var bufView = new Uint8Array(bufArr);
            bufView[0]=6;
            bufView[1]=7;
            bufView[2]=8;
            bufView[3]=9;
            socket.emit('message',bufArr);
        });
    });
app.listen(3000);

讓我們跳到 Javascript 客戶端

Lets jump on to the Javascript client

  var socket = io("http://localhost:3000");
  socket.emit('message', 'hola from js client');

  socket.on('message', function(msg){
    var bufView = new Uint8Array(msg);
    console.log(msg)
  });

最后,讓我們展示一下 Android (java) 客戶端:

And finally, let's show the Android (java) client:

    final Socket socket = IO.socket("http://localhost:3000",opts);

    socket.on(Socket.EVENT_CONNECT, new Emitter.Listener() {
        @Override
        public void call(Object... args) {
            socket.emit("message","hello from java");
        }
    });


    socket.on("message", new Emitter.Listener() {

        @Override
        public void call(Object... args) {
            byte[] bytearray = (byte[])args[0]; //received bytes

            for  (byte b : bytearray) {
                System.out.println("byte"+b);
            }
        }

    });

   socket.on(Socket.EVENT_DISCONNECT, new Emitter.Listener() {
    @Override
    public void call(Object... args) {}
});

希望對大家有用.干杯!

I hope it is useful to you all. Cheers!

這篇關于如何使用 socket.io 發送二進制數據?的文章就介紹到這了,希望我們推薦的答案對大家有所幫助,也希望大家多多支持html5模板網!

【網站聲明】本站部分內容來源于互聯網,旨在幫助大家更快的解決問題,如果有圖片或者內容侵犯了您的權益,請聯系我們刪除處理,感謝您的支持!

相關文檔推薦

How to wrap text around components in a JTextPane?(如何在 JTextPane 中的組件周圍環繞文本?)
MyBatis, how to get the auto generated key of an insert? [MySql](MyBatis,如何獲取插入的自動生成密鑰?[MySql])
Inserting to Oracle Nested Table in Java(在 Java 中插入 Oracle 嵌套表)
Java: How to insert CLOB into oracle database(Java:如何將 CLOB 插入 oracle 數據庫)
Why does Spring-data-jdbc not save my Car object?(為什么 Spring-data-jdbc 不保存我的 Car 對象?)
Use threading to process file chunk by chunk(使用線程逐塊處理文件)
主站蜘蛛池模板: 亚洲成av人片在线观看无码 | 精品综合久久 | 日韩a在线观看 | 亚洲国产欧美一区 | 中文字幕一区在线观看视频 | 亚洲一区二区免费 | 婷婷久久综合 | 3级毛片| 久久国产激情视频 | 久草青青 | 黄免费观看视频 | 色婷婷综合在线观看 | 久久久久中文字幕 | 国产精品久久久久久久久免费樱桃 | 欧美一区二区三区在线观看 | www97影院| 国产一区二区在线观看视频 | 欧美国产精品一区二区 | 99精品国产一区二区三区 | 欧美一级视频免费看 | 精品乱码一区二区三四区 | 黄色片av | 亚洲经典一区 | 亚洲欧美日韩在线一区二区 | 久久久久久久av麻豆果冻 | 福利视频网站 | 久久久久久久一级 | aaaaaaa片毛片免费观看 | 国产精品久久免费观看 | 国产传媒视频在线观看 | 大香网伊人| 成人做爰www免费看视频网站 | 欧美一区免费在线观看 | 麻豆一区二区三区精品视频 | 精产国产伦理一二三区 | 亚洲午夜精品在线观看 | 亚洲成人精品国产 | 欧美精品一区二区三 | 国产精品久久久久久久免费大片 | 欧美国产亚洲一区二区 | 久久精品一区二区三区四区 |