wso2am 弹性搜索查找

wso2am Elastic Search lookup

我从 Apigee 切换到 WSO2 2.1,但缺少某些功能。

当我的 Oauth 用户进行 API 调用时,我想添加一个额外的 Header 到后端请求。例如:“X-Customer-Name:CUST_NAME

我有 Java 代码可以在 ElasticSearch 中查找 "CUST_NAME" 基于 用户的消费者密钥和秘密。我将如何将该代码集成到 WSO2 能够查找值并将额外的 X-Customer-Name header 发送到我的后端?

Java classes 可以使用 <class/> 调解器集成/用于 WSO2 调解。

为此,自定义 java class 可以扩展 AbstractMediator class 并且可以在中介方法中实现逻辑。

创建一个新的序列,如下所示并调用自定义 class,这样自定义 属性 可以设置为消息上下文。

<sequence name="TokenExchange" trace="disable" xmlns="http://ws.apache.org/ns/synapse">
    <class description="" name="com.customer.CustomerName"/>
    <property expression="get-property('Customer-Name','custName')" name="cs" scope="default" type="STRING"/>
</sequence>

将这个新构建的 inSequence 用于您的 API In-Flow 消息中介流,并将适当的属性传递给后端。