如何从WSO2 APIM中的自定义处理程序访问响应有效内容?我尝试从org.apache.synapse.MessageContext或org.apache.synapse.core.axis2.Axis2MessageContext获取此信息;但我无法获得响应有效载荷。有人可以帮忙吗?
答案 0 :(得分:1)
在阅读有效负载之前,您需要在处理程序内部构建消息,如下所示。
public boolean handleResponse(MessageContext messageContext) {
try {
RelayUtils.buildMessage(((Axis2MessageContext) messageContext).getAxis2MessageContext());
} catch (IOException e) {
e.printStackTrace();
} catch (XMLStreamException e) {
e.printStackTrace();
}
// read the body
log.info(messageContext.getEnvelope().getBody());
return true;
}
请参阅[1]以获取完整示例,以便在API Manager 1.8.0的处理程序中构建消息。您需要在pom.xml中为API Manager 1.9.0添加正确的依赖项(将synapse-core和ampapse-nhttp-transport版本更新为2.1.2-wso2v7)
[1] https://github.com/R-Rajkumar/samples/tree/master/message-builder-handler