2

私はapimanger v1.5.0を持っています。access_token でリクエストを承認し、バックエンドに転送します。バックエンドは、リクエストを処理するためにエンドユーザー名が必要です。安全ではないため、JWTヘッダーをリクエストに追加したくありません。

Apimanager は、たとえばrepository/deployment/server/synapse-configs/default/api/admin--common_v1.0.1.xmlセクションのデータをファイルに追加する場合、リクエストにオプションのヘッダーを追加できます。しかし、エンドユーザー名を持つ変数の名前はわかりません。誰か知っていますか?<outSequence><header>uri.var.accessToken

4

1 に答える 1

2

変数名はEND_USER_NAMEです。

使用例:

<inSequence>
        <property name="POST_TO_URI" value="true" scope="axis2"/>
        <property name="X-Test-Username" scope="transport" expression="get-property('END_USER_NAME')"></property>
        <filter source="$ctx:AM_KEY_TYPE" regex="PRODUCTION">

そして、http ヘッダーが生成されます。

GET http://backend.server:8080/sm/api/v1/common/user/example?access_token=4d758b64d5de15029c467dcd6feb354& HTTP/1.1
Accept-Language: ru-RU,ru;q=0.8,en-US;q=0.6,en;q=0.4
Username: rudesu@example.com
Referer: https://example.com/src-jssip-osdk-test/
Accept-Encoding: gzip,deflate,sdch

この方法は APIM 1.7.0 では機能しません

1.7.0 での作業: <property name="X-Test-Username" scope="transport" expression="get-property('END_USER_NAME')"/>

于 2014-06-03T14:14:47.613 に答える