Получить базовый URL-адрес и идентификатор версии с помощью политики Azure APIM - PullRequest
0 голосов
/ 10 июля 2019

Можно ли в рамках политики получить базовый URL-адрес и URL-адрес с выделенной ниже версией: enter image description here URL-адрес необходим, как показано ниже:

@(base url with version identifier)

Выше используется в find-and-replace элемент ниже:

  <policies>
        <inbound>
            <base />
            <set-backend-service base-url="https://my.com/oidc" />        
        </inbound>
        <backend>
            <base />
        </backend>
        <outbound>
            <base />
            <find-and-replace from="https://thirdparty/certs" 
                 to="@(base url with version identifier)/certs" />        
        </outbound>
        <on-error>
            <base />
        </on-error>
    </policies>

Обновление

Как я тоже могу получить базовый URL? Причина в том, что иногда версионный URL не указывается, в этом случае для ответа используется только базовый URL.

https://docs.microsoft.com/en-us/azure/api-management/api-management-policy-expressions#ref-iurl

1 Ответ

0 голосов
/ 12 июля 2019

Вы можете получить базовый URL с версией, используя приведенный ниже фрагмент кода

@{
     var methodRoute = context.Request.Url.ToString().Replace(context.Api.ServiceUrl.ToString(),"");
     var frontEndServiceUrl = context.Request.OriginalUrl.ToString().Replace(methodRoute,"");
}
...