Палец вверх 3
Перевод
Перевод

Совместимость MassTransit с сервисами, отличными от .NET

Я использую MassTransit и мне очень нравится. Однако по умолчанию он упаковывает все полезные данные / сообщения RabbitMQ с некоторым JSON, специфичным для MassTransit. Это затрудняет обмен сообщениями со службами, отличными от .NET. Я знаю, что JSON может быть проанализирован любым языком, но MassTransit - это вещь, предназначенная только для .NET, и в моих службах, отличных от .NET, я бы не хотел добавлять специальную логику для обработки сообщений, генерируемых MassTransit.

Можно ли сериализовать сообщения JSON с помощью MassTransit, которые не проходят через интерфейс «MessageEnvelope», чтобы установить лучшую совместимость со службами, не относящимися к MassTransit? Или это нарушит большинство / всю функциональность MassTransit?

masstransit
задан Andy 29 мар. 2018 г., 17:13:09
источник

1 ответ

Палец вверх 5
Перевод
Перевод

Это описано в документации .

Вы не сможете избежать особой логики для потребления сообщений MT, поскольку формат сообщений предопределен.

Это минимальное сообщение:

{
    "destinationAddress": "rabbitmq://localhost/input_queue",
    "headers": {},
    "message": {
        "value": "Some Value",
        "customerId": 27
    },
    "messageType": [
        "urn:message:MassTransit.Tests:ValueMessage"
    ]
}
ответ дан Alexey Zimarev 29 мар. 2018 г., 17:17:11
источник