Я пытался создать собственную политику, с целью маски службы:
Оригинальные службы в API:
http://API/v1/profile
http://API/v1/account
С маской:
http://API/v1/user-profile
http://API/v1/user-account
И комбинация ответа пользователя Bee это решение для этой проблемы:
<switch source="get-property('axis2', 'REST_URL_POSTFIX')">
<case regex="/v1/kyc-profile">
<property name="REST_URL_POSTFIX" value="/v1/profile" scope="axis2"/>
</case>
<case regex="/v1/kyc-account">
<property name="REST_URL_POSTFIX" value="/v1/account" scope="axis2"/>
</case>
</switch>
Но это решение работает только там, где службы stati c, но у меня есть другие службы, подобные:
http://API/v1/user-profile/{id-user}/details
http://API/v1/user-profile/{id-user}?expand=some_information
Для последней службы у меня есть это:
<switch source="get-property('axis2', 'REST_URL_POSTFIX')">
<case regex="v1/user-profile/[\/\w\W]*">
<property name="REST_URL_POSTFIX" value="/v2/cliente/{id-user}?expand=some_information" scope="axis2"/>
</case>
</switch>
[/ \ w \ W] * Эта часть является регулярным выражением для {id-user }? expand = some_information и аналогичные.
Проблема заключается в следующем: мне нужно положить dynamici c value , поскольку свойство value (<property name="REST_URL_POSTFIX"
value = "THIS" scope="axis2"/>
) принимает этот текст, например:
Служба до полиса cie
http://API/v1/user-profile/1?expand=some_information
Служба после полиса cie
http://API/v1/user-profile/{id-user}?expand=some_information
Мои вопросы:
- Как указать значение c для услуг, аналогичное:
http://API/v1/user-profile/{id-user}?expand=some_information
? - Для другой услуги,
http://API/v1/user-profile/{id-user}/details
У меня есть Подобная ситуация, Как решить?