Phi*_*ord 2 php amqp rabbitmq symfony
我正在尝试使用Symfony 中的RabbitMQ Bundle设置消息属性,但我不知道在哪里/如何执行此操作。这是我在 RabbitMQ Admin UI 中的操作方法

属性到期时间:50000 是我想设置的。
我怎样才能做到这一点?
小智 5
自 2014 年 1 月 8 日起,您使用RabbitMQ Bundle设置消息属性,您可以在此处查看提交
现在,当您发布消息时,您将设置数组 $additionalProperties
public function publish($msgBody, $routingKey = '', $additionalProperties = array())
Run Code Online (Sandbox Code Playgroud)
您可以在此处找到支持的消息属性
例如:
$msg = ['arg1' => 'val1'];
$queue->setContentType('application/json');
$queue->publish(
json_encode($msg),
"",
['expiration' => '50000']
);
Run Code Online (Sandbox Code Playgroud)
如果您想对自定义标头使用“标头”,则有点复杂,因为您必须为每个值定义数据类型。要发送,例如 $headers['arg1'] = "val1" 像一个字符串,你必须做这样的事情:
$msg = ['arg1' => 'val1'];
$queue->setContentType('application/json');
$queue->publish(
json_encode($msg),
"",
["application_headers" => ["arg1" => ["S", "val1"]]]
);
Run Code Online (Sandbox Code Playgroud)
有效的数据类型是:
S - 字符串
I - 整数
D - 十进制
T - 时间戳
F - 表
A - 数组
| 归档时间: |
|
| 查看次数: |
2234 次 |
| 最近记录: |