JSMQ, zeromq/NetMQ的Javascript客户端

分享于 

3分钟阅读

GitHub

  繁體 雙語
Javascript client for ZeroMQ/NetMQ
  • 源代码名称:JSMQ
  • 源代码网址:http://www.github.com/zeromq/JSMQ
  • JSMQ源代码文档
  • JSMQ源代码下载
  • Git URL:
    git://www.github.com/zeromq/JSMQ.git
    Git Clone代码到本地:
    git clone http://www.github.com/zeromq/JSMQ
    Subversion代码到本地:
    $ svn co --depth empty http://www.github.com/zeromq/JSMQ
    Checked out revision 1.
    $ cd repo
    $ svn up trunk
    
    JSMQ

    JSMQ是一个通过 web for/NetMQ实现的javascript客户端。

    尽管目前ZeroMQ和NetMQ还没有 web socket传输,但是扩展已经存在于 NetMQCZMQ服务器。

    对于没有 web sockets支持的浏览器,你可以尝试使用 web-socket-js。

    JSMQ和 NetMQ web dav目前都是 beta,而且API和协议可能会改变。

    JSMQ目前实现经销商和订阅者模式,而 NetMQ web sockets实现路由器和发布者模式。

    你可以从这个页面或者从下载 JSMQ.JS 文件,只需搜索JSMQ并包含预发布文件。

    使用JSMQ与使用ZeroMQ的其他高级绑定非常类似。 下面是小示例:

    
    
    
    
    <html>
    
    
     <script src="C:GitJSMQJSMQ.js"></script>
    
    
     <script>
    
    
     var dealer = new JSMQ.Dealer();
    
    
     dealer.connect("ws://localhost");
    
    
    
    
    
     // we must wait for the dealer to be connected before we can send messages, any messages we are trying to send
    
    
     // while the dealer is not connected will be dropped
    
    
     dealer.sendReady = function() {
    
    
     document.getElementById("sendButton").disabled = "";
    
    
     };
    
    
    
    
    
     var subscriber = new JSMQ.Subscriber();
    
    
     subscriber.connect("ws://localhost:81");
    
    
     subscriber.subscribe("chat");
    
    
    
    
    
     subscriber.onMessage = function (message) {
    
    
     
    
    
     // we ignore the first frame because it's topic
    
    
     message.popString();
    
    
    
    
    
     document.getElementById("chatTextArea").value =
    
    
     document.getElementById("chatTextArea").value +
    
    
     message.popString() + "n";
    
    
     };
    
    
    
    
    
     dealer.onMessage = function (message) {
    
    
     // the response from the server
    
    
     alert(message.popString());
    
    
     };
    
    
    
    
    
     function send() {
    
    
     var message = new JSMQ.Message();
    
    
     message.addString(document.getElementById("messageTextBox").value);
    
    
     
    
    
     dealer.send(message);
    
    
     }
    
    
     </script>
    
    
     <body> 
    
    
     <textarea id="chatTextArea" readonly="readonly"></textarea>
    
    
     <br/>
    
    
     <label>Message:</label><input id="messageTextBox" value=""/>
    
    
     <button id="sendButton" disabled="disabled" onclick="javascript:send();">
    
    
     Send
    
    
     </button> 
    
    
     </body>
    
    
    </html>
    
    
    
    

    JAVA  Javascript  ZERO  Zeromq  
    相关文章