<ph type="x-smartling-placeholder"></ph>
현재 Apigee Edge 문서를 보고 있습니다.
Apigee X 문서. 정보
개요
MonetizeLimitsCheck 정책을 사용하면 수행된 API 호출에 수익 창출 한도를 적용할 수 있습니다. 앱 개발자에 의해 결정됩니다.
정책이 트리거되는 몇 가지 경우는 다음과 같습니다.
- 수익 창출 API에 액세스하는 앱 개발자가 연결된 API 제품을
- 개발자 계정의 잔액이 부족합니다.
- 개발자가 거래량 한도를 초과했습니다.
정책을 API 프록시에 연결하는 방법에 대한 자세한 내용은 다음을 참조하세요. API 프록시에 수익 창출 제한 적용
<MonetizationLimitsCheck>
요소
MonetizeLimitsCheck 정책을 지정합니다.
기본값 | 해당 사항 없음 |
필수 여부 | 필수 |
유형 | 복합 유형 |
상위 요소 | 해당 사항 없음 |
하위 요소 |
<DisplayName> <FaultResponse> <IgnoreUnresolvedVariables> <Variables> |
다음 표에서는 <MonetizationLimitsCheck>
의 하위 요소를 간략하게 설명합니다.
하위 요소 | 필수 여부 | 설명 |
---|---|---|
<DisplayName> |
선택사항 | 정책의 커스텀 이름입니다. |
<FaultResponse> |
선택사항 | 요청이 있을 때 요청 클라이언트로 반환되는 응답 메시지를 지정합니다. 오류가 발생합니다 |
<IgnoreUnresolvedVariables> |
선택사항 | 해결되지 않은 변수가 발생하면 처리를 중지할지 여부를 결정합니다. |
<Variables> |
선택사항 | 수익 창출 한도를 확인하기 위한 흐름 변수를 지정합니다. |
<MonetizationLimitsCheck>
요소는 다음 구문을 사용합니다.
구문
<?xml version="1.0" encoding="UTF-8"?> <MonetizationLimitsCheck async="false" continueOnError="false" enabled="true" name="POLICY_NAME"> <DisplayName>DISPLAY_NAME</DisplayName> <IgnoreUnresolvedVariables>[true|false]</IgnoreUnresolvedVariables> <Variables> <Product>VARIABLE_NAME</Product> </Variables> <FaultResponse> <Set> <Payload contentType="text/xml"> <error> <messages> <message>MESSAGE_TEXT</message> <message>MESSAGE_TEXT</message> </messages> </error> </Payload> <StatusCode>HTTP_STATUS</StatusCode> <ReasonPhrase>REASON_TEXT</ReasonPhrase> </Set> </FaultResponse> </MonetizationLimitsCheck>
예
다음 예는 MonetizeLimitsCheck 정책 정의를 보여줍니다.
<?xml version="1.0" encoding="UTF-8"?> <MonetizationLimitsCheck async="false" continueOnError="false" enabled="true" name="Monetization-Limits-Check"> <DisplayName>Monetization Limits Check</DisplayName> <IgnoreUnresolvedVariables>true</IgnoreUnresolvedVariables> <Variables> <Product>myproductvar.name</Product> </Variables> <FaultResponse> <Set> <Payload contentType="text/xml"> <error> <messages> <message>Developer has reached usage quota</message> <message>Is Developer Suspended - {monetizationLimits.isDeveloperSuspended} </message> </messages> </error> </Payload> <StatusCode>403</StatusCode> <ReasonPhrase>Forbidden</ReasonPhrase> </Set> </FaultResponse> </MonetizationLimitsCheck>
This element has the following attributes that are common to all policies:
Attribute | Default | Required? | Description |
---|---|---|---|
name |
N/A | Required |
The internal name of the policy. The value of the Optionally, use the |
continueOnError |
false | Optional | Set to "false" to return an error when a policy fails. This is expected behavior for most policies. Set to "true" to have flow execution continue even after a policy fails. |
enabled |
true | Optional | Set to "true" to enforce the policy. Set to "false" to "turn off" the policy. The policy will not be enforced even if it remains attached to a flow. |
async |
false | Deprecated | This attribute is deprecated. |
하위 요소 참조
이 섹션에서는<MonetizationLimitsCheck>
의 하위 요소를 설명합니다.
<DisplayName>
Use in addition to the name
attribute to label the policy in the
management UI proxy editor with a different, more natural-sounding name.
The <DisplayName>
element is common to all policies.
Default Value | n/a |
Required? | Optional. If you omit <DisplayName> , the value of the
policy's name attribute is used |
Type | String |
Parent Element | <PolicyElement> |
Child Elements | None |
The <DisplayName>
element uses the following syntax:
Syntax
<PolicyElement> <DisplayName>policy_display_name</DisplayName> ... </PolicyElement>
Example
<PolicyElement> <DisplayName>My Validation Policy</DisplayName> </PolicyElement>
The <DisplayName>
element has no attributes or child elements.
<IgnoreUnresolvedVariables>
Apigee가 해결되지 않은 변수를 발견하는 경우 정책 처리를 중지해야 하는지 결정합니다.
기본값 | True |
필수 여부 | 선택사항 |
유형 | 불리언 |
상위 요소 |
<MonetizationLimitsCheck> |
하위 요소 | 없음 |
해결되지 않은 변수를 무시하고 계속 처리하려면 값을 true
로 설정합니다.
그렇지 않으면 false
입니다. 기본값은 true
입니다.
<IgnoreUnresolvedVariables>
를 true
로 설정하는 것은 <MonetizationLimitsCheck>
요소의 설정과 다릅니다.
continueOnError
에서 true
(으)로 continueOnError
를 true
로 설정하면 Apigee가 다음을 무시합니다.
오류만 반환합니다.
<IgnoreUnresolvedVariables>
요소는 다음 구문을 사용합니다.
구문
<IgnoreUnresolvedVariables>[true|false]</IgnoreUnresolvedVariables>
예
다음 예시에서는 <IgnoreUnresolvedVariables>
를 false
로 설정합니다.
<IgnoreUnresolvedVariables>false</IgnoreUnresolvedVariables>
<Variables>
가져올 흐름 변수를 지정합니다. 항목 또는 리소스 이름을 지정할 수 있습니다
<Variables>
요소 내에서 <Product>
요소만 지정할 수 있습니다. Apigee 가져오기
<Product>
요소에 지정된 흐름 변수의 API 제품 이름 만약
<Variables>
요소를 지정하지 않으면 Apigee가 기본적으로
apiproduct.name
컨텍스트 변수 Apigee는 API 제품 이름을 사용하여
해당 요율표를 검토하고 수익 창출 한도 확인을 수행합니다.
기본값 | 해당 사항 없음 |
필수 여부 | 선택사항 |
유형 | 복합 유형 |
상위 요소 |
<MonetizationLimitsCheck> |
하위 요소 |
<Product> |
<Variables>
요소는 다음 문법을 사용합니다.
구문
<Variables> <Product>VARIABLE_NAME</Product> </Variables>
예
다음 예시는 myproductvar.name
맞춤 흐름 변수에서 API 제품 이름을 가져옵니다.
API 프록시 흐름에 있습니다.
<Variables> <Product>myproductvar.name</Product> </Variables>
AssignMessage 또는 JavaScript와 같은 정책을 사용하여 맞춤 흐름 변수를 설정할 수 있습니다.
<Product>
API 제품 이름이 있는 변수를 지정합니다.
기본값 | 해당 사항 없음 |
필수 여부 | 선택사항 |
유형 | 문자열 |
상위 요소 |
<Variables> |
하위 요소 | 없음 |
<Product>
요소는 다음 문법을 사용합니다.
구문
<Product>VARIABLE_NAME</Product>
예
다음 예시는 myproductvar.name
맞춤 흐름 변수에서 API 제품 이름을 가져옵니다.
API 프록시 흐름에 있습니다.
<Product>myproductvar.name</Product>
AssignMessage 또는 JavaScript와 같은 정책을 사용하여 맞춤 흐름 변수를 설정할 수 있습니다.
<FaultResponse>
오류가 발생할 경우 요청하는 클라이언트에 반환되는 응답 메시지를 정의합니다. 응답을 맞춤설정할 수 있습니다. 필요에 따라 메시지를 표시할 수 있습니다 자세한 내용은 요소에 대한 자세한 내용은 FaultResponse를 참조하세요.
흐름 변수
<MonetizationLimitsCheck>
요소의
ContinueOnError
속성을 true로 설정하면 오류가 발생하지 않습니다. 이 경우
흐름 변수 mint.limitsViolated
, mint.isDeveloperSuspended
,
mint.limitsPolicyError
가 자동으로 설정됩니다. 이러한 변수는
필요한 경우 추가 예외 처리를 실행합니다.