변수 설정
적용 대상: 모든 API Management 계층
set-variable
정책은 컨텍스트 변수를 선언하고 식 또는 문자열 리터럴을 통해 지정된 값을 할당합니다. 식에 리터럴이 포함된 경우 리터럴은 문자열로 변환되고 값 형식은 System.String
이 됩니다.
참고 항목
정책 문에 제공된 순서대로 정책의 요소 및 자식 요소를 설정합니다. API Management 정책을 설정하거나 편집하는 방법에 대해 자세히 알아봅니다.
정책 문
<set-variable name="variable name" value="Expression | String literal" />
특성
특성 | 설명 | 필수 |
---|---|---|
name | 변수의 이름입니다. 정책 식은 허용되지 않습니다. | 예 |
value | 변수의 값입니다. 식 또는 리터럴 값일 수 있습니다. 정책 식이 허용됩니다. | 예 |
사용
- 정책 섹션: inbound, outbound, backend, on-error
- 정책 범위: 전역, 작업 영역, 제품, API, 작업
- 게이트웨이: 클래식, v2, 사용량, 자체 호스팅, 작업 영역
허용 형식
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
정책을 보여 줍니다. 이 변수 설정 정책은 User-Agent
요청 헤더에 iPad
또는 iPhone
텍스트가 포함되는 경우 true로 설정되는 isMobile
부울 컨텍스트 변수를 생성합니다.
<set-variable name="IsMobile" value="@(context.Request.Headers.GetValueOrDefault("User-Agent","").Contains("iPad") || context.Request.Headers.GetValueOrDefault("User-Agent","").Contains("iPhone"))" />
관련 정책
관련 콘텐츠
정책 작업에 대한 자세한 내용은 다음을 참조하세요.
- 자습서: API 변환 및 보호
- 정책 문 및 해당 설정에 대한 전체 목록에 대한 정책 참조
- 정책 식
- 정책 설정 또는 편집
- 정책 구성 재사용
- 정책 코드 조각 리포지토리
- Azure API Management 정책 도구 키트
- Azure의 Microsoft Copilot을 사용하는 작성자 정책