2017-05-08 11 views
1

プロキシを次のように設定します。デフォルトでApigeeで特定のプレフィックスを持つすべてのコンテンツを別のサービスにルーティングするにはどうすればいいですか

  • すべての要求が通過します
  • http://admin.api.comこれは、部分的にその中で働く

<RouteRule name="mocker"> <Condition>(proxy.pathsuffix JavaRegex "^/admin/?.*$")</Condition> <TargetEndpoint>MockTarget</TargetEndpoint> </RouteRule> <RouteRule name="default"> <TargetEndpoint>default</TargetEndpoint> </RouteRule>

にルーティングされます/管理を開始するURIパスを持っているすべての要求http://main.api.comへ実際には別のホストにルーティングします。ただし、パスは維持されます。したがって、/ admin/foo/barのリクエストはhttp://admin.api.com/admin/foo/barにリダイレクトされますが、私はhttp://admin.api.com/foo/barに行きました

どうすればいいですか?

答えて

1

ターゲットプレフローでtarget.copy.pathsuffixfalseに設定する必要があります。これにより、Proxyからのパスがターゲットにコピーされないことが保証されます。

あなたは簡単にコード

context.setVariable("target.copy.pathsuffix", false); 
とターゲットプリフローのJavascriptのポリシーを追加することによってこれを行うことができます
関連する問題