RabbitMQ从接收到的消息中分离键和值

时间:2018-08-07 15:50:56

标签: c rabbitmq

我有一个本地{@ {1}}下运行的RabbitMQ服务器。我在那里建立了一个交易所。在依赖rabbitmq-c库的客户端下,我创建了一个队列和路由键,以便订阅预定义的交换。

http://localhost:15672/

在通过客户端创建到服务器的TCP连接之后,我看到了连接,在服务器中创建了队列和绑定。如果我从服务器发布消息,例如:

// Create queue
{
    amqp_queue_declare_ok_t *r= amqp_queue_declare(conn, 1, amqp_empty_bytes, 0, 1, 1, 1, amqp_empty_table);
    die_on_amqp_error(amqp_get_rpc_reply(conn), "Declaring queue");
    positionQueue = amqp_bytes_malloc_dup(r->queue);

    if(positionQueue .bytes== NULL)
    {
        fprintf(stderr, "Out of memory while copying queue name");
        return 1;
    }
    std::cout<< "Queue for position is created!"<< std::endl;
}

// Binding the exchange to the position queue
amqp_queue_bind(conn, 1, positionQueue, amqp_cstring_bytes(positionExchange), amqp_cstring_bytes(positionRoutingKey), amqp_empty_table);
die_on_amqp_error(amqp_get_rpc_reply(conn), "Binding queue");

// Receive message
amqp_basic_consume(conn, 1, positionQueue, amqp_empty_bytes, 0, 1, 0, amqp_empty_table);
.
.
.

然后我收到以下格式的消息:

我的问题是,如何将基于键和值的消息保存到变量中?

0 个答案:

没有答案