javascript - 在基于 Vert.x 的应用程序中将从服务器接收到的数据传递给浏览器

标签 javascript vertex event-bus vert.x

我正在开发一个应用程序,它将使用 Ver.x 在浏览器上显示从服务器接收到的数据。所以,我有以下模块:

server.java:

NetServer server = vertxx.createNetServer();

    server.connectHandler(new Handler<NetSocket>() {

        @Override
        public void handle(final NetSocket sock) {

            System.out.println("A client has connected");                

            while (true) {           
                //Sending Message to Client after each five seconds
                Thread.sleep(5000);
                socket.write("HELLO Server: I am Client: " + i);                    
            }                         
        }
    });

客户端.js:

var client = vertx.createNetClient();

client.connect(1234, 'localhost', function(err, sock) {

   sock.dataHandler(function(buffer) {
       //Here I received data sent from server. Now, I want to show this data on browser.
   });
});

所以,我想在浏览器上显示客户端从服务器接收到的数据。这有什么可能性?如何在客户端从服务器接收到的数据逐渐显示在浏览器上?我是否必须使用像顶点事件总线这样的第三方组件?我需要将它附加到一些 HTML 文件中以显示数据。谢谢

最佳答案

为什么你不使用 websockets..你也可以检查事件总线桥......它允许你从浏览器的事件总线发送和接收数据(基本上你像其他 eventBus 一样使用 websocket)

http://vertx.io/core_manual_java.html#sockjs-eventbus-bridge

<script src="http://cdn.sockjs.org/sockjs-0.3.4.min.js"></script>
<script src='vertxbus.js'></script>

<script>

    var eb = new vertx.EventBus('http://localhost:8080/eventbus');

    eb.onopen = function() {

      eb.registerHandler('some-address', function(message) {

        console.log('received a message: ' + JSON.stringify(message);

      });

      eb.send('some-address', {name: 'tim', age: 587}); //--------2)

    }

</script>

这里您的服务器中有一个名为“some-addres”的总线,然后您可以直接从浏览器发送数据 2)

你可以注册一个事件总线并从你的服务器向它发送数据...... 这很清楚,只记得正确配置您的总线,允许或不允许哪些总线在浏览器中可见..

vertx.createSockJSServer(server).bridge(config, noPermitted, noPermitted);

关于javascript - 在基于 Vert.x 的应用程序中将从服务器接收到的数据传递给浏览器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28849319/

相关文章:

javascript - localStorage 返回 NULL

javascript - Angular JS 方法未使用 Wcf 服务定义

javascript - Three.js BufferGeometry顶点位置数组元素顺序是什么意思?

javascript - Vue2 从循环组件中的子项调用父方法

java - 从 Guava EventBus 订阅者抛出异常

android - EventBus OnEvent() 没有被调用

javascript - Jquery 使用大于第一个选择的选项填充第二个选择项

javascript - 使用 Mustache 仅显示列表中的第一项

c++ - 如何正确填充顶点数组

3d - 计算网格的顶点价 OpenMesh