2017-07-14 3 views
1

私はApigeeからWSO2 2.1に切り替えましたが、機能上欠けています。wso2am弾性検索の参照

私のOauthユーザーがAPI呼び出しを行うときに、追加のヘッダー をバックエンド要求に追加します。例:「X-顧客名:CUST_NAME

私はルックアップするためにJavaコードを持っている 『私はルックアップできるように WSO2にそのコードを統合する方法 ユーザーの消費者キー&秘密に基づいてElasticSearchにCUST_NAMEを』。値とは、私のバックエンドに余分なX-顧客名のヘッダを送信する?

+0

API呼び出しごとにこれを呼び出す必要がありますか? –

+0

はい、すべてのAPIリクエストでESクエリを実行したいと考えています。 [このページ](https://docs.wso2.com/display/AM210/Passing+Enduser+Attributes+to+the+Backend+Using+JWT)が見つかりましたが、追加する依存関係が見つかりません私のpom.xml – user2725960

答えて

0

Javaクラスは、/統合<class/>伝達物質を使用してWSO2メディエーションに使用することができます。

はこれを実現するために、カスタムJavaクラスはAbstractMediatorクラスを拡張することができます仲介メソッドでロジックを実装することができます。

次のような新しいinsequenceを作成し、カスタムクラスを呼び出すと、カスタムプロパティをメッセージコンテキストに設定できます。

<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> 

あなたのAPIでは、メッセージ・フローのメディエーション・フローには、この新しく建設されたinSequenceを使用し、バックエンドに適切なプロパティを渡します。

+0

そのためのコード例はありますか? [エンドユーザ属性をバックエンドにJWTを使って渡す](https://docs.wso2.com/display/AM210/Passing+Enduser+Attributes+to+the+Backend+Using+JWT)で述べたクラスを拡張しようとしました。 )ページでは、私はどのようにpom.xmlで自分の依存関係を構成するかを理解できませんでした。 – user2725960

+0

誰かがapim 2.1のサンプルのmavenプロジェクトを指し示すことができますか? – user2725960