Задать переменную
ОБЛАСТЬ ПРИМЕНЕНИЯ: все уровни Управление API
Политика set-variable
объявляет переменную контекста и присваивает ей значение, заданное с помощью выражение или строкового литерала. Если выражение содержит литерал, оно будет преобразовано в строку, а тип значения будет System.String
.
Примечание.
Задайте элементы политики и дочерние элементы в порядке, указанном в правиле политики. Узнайте, как устанавливать или изменять политики службы управления API.
Правило политики
<set-variable name="variable name" value="Expression | String literal" />
Атрибуты
Атрибут | Description | Обязательное поле |
---|---|---|
name | Имя переменной. Выражения политики не допускаются. | Да |
значение | Значение переменной. Это может быть выражение или литеральное значение. Допустимы выражения политики. | Да |
Использование
- Разделы политики: inbound, outbound, backend, on-error.
- Области политики: глобальная, рабочая область, продукт, API, операция
- Шлюзы: классическая, версия 2, потребление, локальное размещение, рабочая область
Допустимые типы
Выражения, используемые в политике set-variable
, должны возвращать один из следующих основных типов.
- System.Boolean
- System.SByte
- System.Byte
- System.UInt16
- System.UInt32
- System.UInt64
- System.Int16
- System.Int32
- System.Int64
- System.Decimal
- System.Single
- System.Double
- System.Guid
- System.String
- System.Char
- System.DateTime
- System.TimeSpan
- System.Byte?
- System.UInt16?
- System.UInt32?
- System.UInt64?
- System.Int16?
- System.Int32?
- System.Int64?
- System.Decimal?
- System.Single?
- System.Double?
- System.Guid?
- System.String?
- System.Char?
- System.DateTime?
Пример
В следующем примере показано, как set-variable
политика входящего трафика. Политика задания переменной создает логическую переменную контекстаisMobile
, которой присваивается значение true, если заголовок запроса User-Agent
содержит текст iPad
или iPhone
.
<set-variable name="IsMobile" value="@(context.Request.Headers.GetValueOrDefault("User-Agent","").Contains("iPad") || context.Request.Headers.GetValueOrDefault("User-Agent","").Contains("iPhone"))" />
Связанные политики
Связанный контент
Дополнительные сведения о работе с политиками см. в нижеуказанных статьях.
- Руководство. Преобразование и защита API
- Полный перечень операторов политик и их параметров см. в справочнике по политикам.
- Выражения политики
- Настройка или изменение политик
- Повторное использование конфигураций политик
- Репозиторий фрагментов политик
- Создание политик с помощью Microsoft Copilot в Azure