Wso2 使用本地API端点解决消息处理器问题

Wso2 使用本地API端点解决消息处理器问题,wso2,wso2esb,wso2ei,Wso2,Wso2esb,Wso2ei,我正在尝试创建一个重试机制,在出现错误时(例如HTTP 400),该机制将调用我的API(使用POST方法) 因此,我创建了一个内存中的消息存储。如果REST调用失败,我会将消息发送到我创建的消息存储区 然后,我尝试在WSO2管理控制台UI中创建与API URL相同的端点(将使用计划的消息转发处理器): ,但单击“测试”按钮时出现以下错误: 有趣的是,我可以使用Postman或通过我的应用程序访问API,但WSO2本身无法访问API上可用的API 我意识到,当我单击测试按钮时,WSO2在我尝

我正在尝试创建一个重试机制,在出现错误时(例如HTTP 400),该机制将调用我的API(使用POST方法)

因此,我创建了一个内存中的消息存储。如果REST调用失败,我会将消息发送到我创建的消息存储区

然后,我尝试在WSO2管理控制台UI中创建与API URL相同的端点(将使用计划的消息转发处理器):

,但单击“测试”按钮时出现以下错误:

有趣的是,我可以使用Postman或通过我的应用程序访问API,但WSO2本身无法访问API上可用的API

我意识到,当我单击测试按钮时,WSO2在我尝试的端点的末尾添加了
?wsdl
,消息处理器只能使用此方法调用可用的
GET
API,但我的API使用
POST
方法,我需要调用它

我正在使用WSO EI 6.4.0

谢谢你的建议


注意。

要连接到REST API,应该使用HTTP端点,而不是地址端点


<强>但您可以考虑从API中提取您想要的逻辑到一个序列中,并使用消息采样处理器将消息推送到该序列而不是您自己的REST API。这可能是一个更有效的解决方案。

Hi@tmoasz,感谢您的快速回复。我还尝试使用HTTP端点,但出现了相同的错误“地址无效,无法建立连接”。我在控制台中将API端点添加为URI模板。我会考虑并尝试你的其他建议。@ BK不用担心这个按钮测试的结果。我认为它只适用于SOAP-Web服务,对于HTTP端点,我也有错误,但端点工作正常。使用消息采样处理器方式,我可以成功重试API调用:)只剩下一个问题,即在执行第二个调用时,头参数和axis2属性被删除。因为我正在将头参数和属性值记录到DB中。对于To值,记录的值与存储消息之前一样更改,您可以在属性中介中设置:“To”或标头中的任何感兴趣的值。它们保存在消息上下文中,所以在消息处理器之后,您可以轻松地将它们取回。