我使用带有mqlight的nodejs来运行https://www.npmjs.com/package/mqlight提供的示例代码。

我正在使用nodejs 5.5.0,npm版本是3.3.12。

我使用npm install mqlight安装了mqlight。


    var mqlight = require('mqlight');
    var recvClient = mqlight.createClient({service:'amqp:// localhost'});
    var topicPattern ='public';
    recvClient.on('started',function(){
      recvClient.subscribe(topicPattern);
      recvClient.on('message',function(data,delivery){
        console.log('Recv:%s',数据);
      });
    });

    var sendClient = mqlight.createClient({service:'amqp:// localhost'});

    var topic ='public';
    sendClient.on('started',function(){
      sendClient.send(topic,'Hello World!',function(err,data){
        console.log('发送:%s',数据);
        sendClient.stop();
      });
    });



当我在上面的代码上运行时,出现下面的错误。




     E:\ nodejs>节点mqtest.js

    events.js:154
          抛出//未处理的“错误”事件
          ^
     NetworkError:连接错误(localhost:5672):连接失败:远程服务器
    mputer拒绝了网络连接。
        在Socket.connError(E:\ nodejs \ node_modules \ mqlight \ mqlight.js:1437:19)
        在emitOne上(events.js:90:13)
        在Socket.emit(events.js:182:7)
        在emitErrorNT(net.js:1255:8)
        在nextTickCallbackWith2Args(node.js:474:9)
        在process._tickCallback(node.js:388:17)



请帮助解决此问题。我正在使用Windows 7 64位操作系统。

最佳答案

您确定服务amqp正在运行吗?您可以按照以下脚本启动amqp服务。

START SERVICE(SYSTEM.AMQP.SERVICE)
START CHANNEL(SYSTEM.DEF.AMQP)
REFRESH SECURITY TYPE(CONNAUTH)
DISPLAY CHSTATUS(SYSTEM.DEF.AMQP) CHLTYPE(AMQP)

10-07 21:50