Spring Ampq 类型名称和 EasyNetQ

Spring Ampq type name and EasyNetQ

我需要在使用 EasyNetQ 的 C# 微服务和使用 Spring Amqp 的 Java 之间发送消息。

问题是属性消息,来自 Spring Boot Amqp 的类型在 属性 __type__ headers 容器中,而在 EasynetQ 中预计来自名为 type

谁能告诉我我需要定制什么才能让他们也能沟通?

Spring Amqp :
    "Headers":{"__TypeId__":"com.fastdeliveryservice.service.Info"}

   EasynetQ: 
      "type" : "com.fastdeliveryservice.service.Info"

您可以自定义 Jackson2JsonMessageConverter,方法是使用自定义的 Jackson2JavaTypeMapper 配置它。 DefaultJackson2JavaTypeMapper 的子类并将 getClassIdFieldName() 方法重写为 return type 而不是 __TypeId__.