node.js - meteor + Node -amqp : unable to connect via SSL to RabbitMQ server

标签 node.js meteor rabbitmq node-amqp

我在Meteor应用程序中使用node-amqp通过SSL连接到rabbitMQ服务器。这是我的连接字符串:

var rConn = AMQP.createConnection({ url: amqps://user:pass@host:pppp, vhost: '/virthost' });

但是,没有建立任何连接。 RabbitMQ 错误日志如下:

=INFO REPORT==== 25-Jun-2013::17:41:30 ===
accepting AMQP connection <0.20247.0> (xxx.xxx.xxx.xxx:pppp -> xxx.xxx.xxx.xxx:pppp)

=ERROR REPORT==== 25-Jun-2013::17:41:30 ===
error on AMQP connection <0.20231.0>: {ssl_upgrade_error,"record overflow"} (unknown POSIX error)

=INFO REPORT==== 25-Jun-2013::18:11:35 ===
accepting AMQP connection <0.22556.0> (xxx.xxx.xxx.xxx:pppp -> xxx.xxx.xxx.xxx:pppp)

=ERROR REPORT==== 25-Jun-2013::18:11:40 ===
error on AMQP connection <0.22556.0>: {ssl_upgrade_error,timeout} (unknown POSIX error)

我在记录溢出错误中能找到的就是检查正在运行的 Erlang 版本。我尝试建立连接的盒子正在使用最新版本。我不确定运行 RabbitMQ 的盒子,但我会调查一下。任何进一步的帮助将不胜感激。

最佳答案

恐怕此时响应相当晚,但我刚刚遇到了类似的问题,结果我正在将明文通过管道传输到 RabbitMQ 服务器套接字中。服务器期望进行 SSL 协商,但我的客户端代码没有正确设置 SSL 套接字,而是使用常规套接字,导致“记录溢出”,就像这样 - 尽管我的已结束 STOMP 并且看起来像这个:

=ERROR REPORT==== 19-Oct-2015::15:03:10 ===
STOMP detected TLS upgrade error on <0.1224.0> (127.0.0.1:52065 -> 127.0.0.1:61614): alert record overflow

http://erlang.org/pipermail/erlang-questions/2012-December/071099.html是赠品。

因此,我提供这个答案是希望下一个查看此问题的人检查他们的客户端向套接字中注入(inject)的内容。

关于node.js - meteor + Node -amqp : unable to connect via SSL to RabbitMQ server,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17310646/

相关文章:

在 Node.js 中创建 HTTP 服务器时的 Windows 安全警报

node.js - 如何使用proxyquire和mocha在单元测试中模拟方法调用时模拟时间延迟(超时)?

javascript - Node.js Express 没有响应

javascript - 发布和订阅无法正常工作

meteor - 带有错误包的审计参数检查

rabbitmq - 覆盖 SimpleMessageListenerContainer.setDefaultRequeueRejected(false) 行为

java - 如何使用 muleClient.request 从 Java 实现异步 AMQP-RabbitMQ?

routes - Exchange 到 Exchange 绑定(bind)如何将代理与 ‘know’ 服务器队列分离?

javascript - Node.js 和 Express : Pushing to array results in "[object Object]"

javascript - meteor 路由错误 : There is no route for the path:/