Software: Apache/2.4.41 (Ubuntu). PHP/8.0.30 uname -a: Linux apirnd 5.4.0-204-generic #224-Ubuntu SMP Thu Dec 5 13:38:28 UTC 2024 x86_64 uid=33(www-data) gid=33(www-data) groups=33(www-data) Safe-mode: OFF (not secure) /var/www/html/sync/node_modules/amqplib/examples/ drwxr-xr-x | |
| Viewing file: Select action/file-type: #!/usr/bin/env node
const amqp = require('../');
(async () => {
const connection = await amqp.connect();
const channel = await connection.createChannel();
process.once('SIGINT', async () => {
await channel.close();
await connection.close();
});
const { exchange } = await channel.assertExchange('matching exchange', 'headers');
const { queue } = await channel.assertQueue();
// When using a headers exchange, the headers to be matched go in
// the binding arguments. The routing key is ignore, so best left
// empty.
// 'x-match' is 'all' or 'any', meaning "all fields must match" or
// "at least one field must match", respectively. The values to be
// matched go in subsequent fields.
await channel.bindQueue(queue, exchange, '', {
'x-match': 'any',
'foo': 'bar',
'baz': 'boo'
});
await channel.consume(queue, (message) => {
console.log(message.content.toString());
}, { noAck: true });
channel.publish(exchange, '', Buffer.from('hello'), { headers: { baz: 'boo' }});
channel.publish(exchange, '', Buffer.from('hello'), { headers: { foo: 'bar' }});
channel.publish(exchange, '', Buffer.from('lost'), { headers: { meh: 'nah' }});
console.log(' [x] To exit press CTRL+C.');
})();
|
:: Command execute :: | |
--[ c99shell v. 2.5 [PHP 8 Update] [24.05.2025] | Generation time: 0.0241 ]-- |