在以下情况下,我无法直接响应MassTransit RequestClient的请求
RequestClient
并调用GetResponse
messageId, requestId
...)保存到某个存储中,而不发送回响应。
RequestClient
总线的临时队列来实现此目的,但是该消息最终出现在临时队列的跳过队列中,并且GetResponse
从未收到该消息。我如何使消息到达主临时队列,并使GetResponse
使用者找到它。
答案 0 :(得分:0)
如果有人有类似情况。我们通过在使用者中实现事件等待器机制来实现此目的。当在服务2中进行外部API调用时,会触发内部事件,然后通过ResetEvent等待它的使用者继续收集响应并将其通过开箱即用的RespondAsync发送回去。