Ich schreibe einen automatisierten Test, um einen Verbraucher zu testen. Bisher musste ich beim Veröffentlichen von Nachrichten keinen Header hinzufügen, aber jetzt tue ich es. Und es scheint wie seine fehlende Dokumentation.So fügen Sie einen Header-Schlüssel: Wert-Paar beim Veröffentlichen einer Nachricht mit Pika
Das ist mein Verleger:
class RMQProducer(object):
def __init__(self, host, exchange, routing_key):
self.host = host
self.exchange = exchange
self.routing_key = routing_key
def publish_message(self, message):
connection = pika.BlockingConnection(pika.ConnectionParameters(self.host))
channel = connection.channel()
message = json.dumps(message)
channel.basic_publish(exchange=self.exchange,
routing_key=self.routing_key,
body=message)
ich smtn wie zu tun:
channel.basic_publish(exchange=self.exchange,
routing_key=self.routing_key,
body=message,
headers={"key": "value"})
Was ist der richtige Weg, um hinzuzufügen Header dieser Nachricht?
Sie können hier ein Beispiel ansehen, das ich für Pika habe, wie man Header hinzufügt. https://github.com/eandersson/python-rabbitmq-examples/blob/master/Flask-examples/pika_async_rpc_example.py#L113 – eandersson
Sie haben hier ein weiteres Beispiel mit meiner eigenen amqp-Bibliothek https://github.com/ eandersson/amqpstorm/blob/stable/Beispiele/classic_publisher.py # L16 – eandersson