在iOS上使用RabbitMQ时出错

时间:2014-06-27 14:14:48

标签: ios rabbitmq

在我的iOS应用中,我使用https://github.com/bimawa/AMQProtocol

中的RabbitMQ包装器
AMQPConnection *connection = [[AMQPConnection alloc] init];
NSError *error,*error1,*error2;
[connection connectToHost:server onPort:port error:&error];
[connection loginAsUser:login withPasswort:password onVHost:@"/" error:&error1];

AMQPChannel *channel = [connection openChannelError:&error2]; // Get error here!

在最后一行,我收到错误"无法打开频道"

2014-06-27 11:17:06.094 MyApp[40055:60b] TCLib>> AMQPException AMQP_RESPONSE_LIBRARY_EXCEPTION: Failed to open a channel: Argument list too long
2014-06-27 11:17:06.107 MyApp[40055:60b] TCLib>> open channel error: Error Domain=AMQPChannel Code=-5 "Failed to open a channel" UserInfo=0x9abe330 {NSLocalizedDescription=Failed to open a channel}

服务器,主机,登录名和密码正常运行。我在Android应用程序上检查了它们。

无法找出无法打开频道的原因。你能推荐什么吗?

1 个答案:

答案 0 :(得分:0)

可能为时已晚,但可能对其他人有帮助。:)

在我的情况下,问题出在我登录'vhost'或

时出错

[connection loginAsUser:login withPasswort:password onVHost:@"/" error:&error1];

行,我试图打开空连接的通道。 问题是兔子服务器的权限检查机制。

<强>更新

例如,在将每行传递给这样的方法之后检查错误:

if(error!=nil){ NSLog(@"%@",error); return; }