gpt4 book ai didi

php从rabbitmq获取消息报错

转载 作者:可可西里 更新时间:2023-11-01 13:45:46 26 4
gpt4 key购买 nike

我的 amqp 扩展版本是 1.0.1 & AMQP 协议(protocol)版本是 0-9-1

从队列中获取消息:

<?php
try {
$conn = new AMQPConnection() ;
$conn->setLogin('guest') ;
$conn->setPassword('guest') ;
$conn->connect() ;
if ($conn->isConnected()) {
$channel = new AMQPChannel($conn) ;
if ($channel->isConnected())
{
$queue = new AMQPQueue($channel) ;
$queue->setName('test_queue') ;
$queue->setFlags(AMQP_DURABLE | AMQP_AUTODELETE) ;
$queue->declare() ;
$messages = $queue->get(AMQP_AUTOACK) ;
print_r($messages->getBody()) ;
}
} else {
echo "connect failure ... " ;
}
$conn->disconnect() ;} catch (Exception $e) {
echo $e->getMessage() ;}?>

它不起作用..

Server channel error: 406, message: PRECONDITION_FAILED - parameters for queue 'test_queue' in vhost '/' not equivalent

最佳答案

在我看来,队列已经存在并且之前在 vhost 中使用不同的参数声明(创建)。每次都需要使用完全相同的参数声明队列(或删除并使用所需参数重新创建)。尝试通过管理插件 (http://www.rabbitmq.com/management.html) 删除队列,然后再次运行脚本

关于php从rabbitmq获取消息报错,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9715352/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com