MonetizationLimitsCheck politikası

Apigee Edge belgelerini görüntülüyorsunuz.
. Git: Apigee X belgeleri.
bilgi

Genel Bakış

MonetizationLimitsCheck politikası, yapılan API çağrılarında para kazanma sınırları uygulamanıza olanak tanır uygulama geliştiricisi tarafından oluşturulur.

Politikanın tetiklendiği durumlardan bazıları şunlardır:

  • Para kazanılan API'ye erişen bir uygulama geliştirici tarafından ilişkilendirilmiş API ürünü
  • Geliştiricinin hesabında yeterli bakiye yok.
  • Geliştirici, işlem hacmi sınırını aştı.

Politikayı API proxy'nize ekleme hakkında bilgi edinmek için API proxy'lerinde para kazanma sınırları uygulayın.

<MonetizationLimitsCheck> öğe

MonetizationLimitsCheck politikasını belirtir.

Varsayılan Değer Yok
Zorunlu mu? Zorunlu
Tür Karmaşık tür
Üst Öğe Yok
Alt Öğeler <DisplayName>
<FaultResponse>
<IgnoreUnresolvedVariables>
<Variables>

Aşağıdaki tabloda, <MonetizationLimitsCheck> alt öğeleri için genel bir açıklama sunulmaktadır:

Alt Öğe Zorunlu mu? Açıklama
<DisplayName> İsteğe bağlı Politika için özel bir ad.
<FaultResponse> İsteğe bağlı Aşağıdaki durumlarda istekte bulunan istemciye döndürülen yanıt mesajını belirtir fark edebilirsiniz.
<IgnoreUnresolvedVariables> İsteğe bağlı Çözümlenmemiş bir değişkenle karşılaşıldığında işlemenin durup durmayacağını belirler.
<Variables> İsteğe bağlı Para kazanma sınırlarını kontrol etmek için akış değişkenlerini belirtir.

<MonetizationLimitsCheck> öğesi şu söz dizimini kullanır:

Söz dizimi

<?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>

Örnek

Aşağıdaki örnekte MonetizationLimitsCheck politikasının tanımı gösterilmektedir:

<?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 name attribute can contain letters, numbers, spaces, hyphens, underscores, and periods. This value cannot exceed 255 characters.

Optionally, use the <DisplayName> element to label the policy in the management UI proxy editor with a different, natural-language name.

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.
.

Alt öğe referansı

Bu bölümde, <MonetizationLimitsCheck> alt öğeleri açıklanmaktadır.

<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, çözülmemiş bir değişkenle karşılaştığında politika işlemenin durdurulup durmayacağını belirler.

Varsayılan Değer Doğru
Zorunlu mu? İsteğe bağlı
Tür Boole
Üst Öğe <MonetizationLimitsCheck>
Alt Öğeler Yok

Çözümlenmemiş değişkenleri yoksayıp işlemeye devam etmek için değeri true olarak ayarlayın; Aksi takdirde false. Varsayılan değer true değeridir.

<IgnoreUnresolvedVariables> öğesinin true olarak ayarlanması, <MonetizationLimitsCheck> öğesinin ayarından farklıdır continueOnError - true. continueOnError değerini true olarak ayarlarsanız Apigee, yalnızca değişken hatalarını gösteriyor.

<IgnoreUnresolvedVariables> öğesi şu söz dizimini kullanır:

Söz dizimi

<IgnoreUnresolvedVariables>[true|false]</IgnoreUnresolvedVariables>

Örnek

Aşağıdaki örnekte <IgnoreUnresolvedVariables>, false olarak ayarlanmaktadır:

<IgnoreUnresolvedVariables>false</IgnoreUnresolvedVariables>

<Variables>

varlık veya kaynak adları oluşturur.

<Variables> öğesi içinde yalnızca <Product> öğesini belirtebilirsiniz. Apigee'nin sahip olduğu avantajlar: <Product> öğesinde belirtilen akış değişkenindeki API ürün adı. Şu durumda: <Variables> öğesini belirtmeyin. Apigee, varsayılan olarak API ürün adını apiproduct.name bağlam değişkeni. Apigee, API ürün adını kullanarak ve para kazanma sınırları kontrolünü gerçekleştirir.

Varsayılan Değer Yok
Zorunlu mu? İsteğe bağlı
Tür Karmaşık tür
Üst Öğe <MonetizationLimitsCheck>
Alt Öğeler <Product>

<Variables> öğesi şu söz dizimini kullanır:

Söz dizimi

<Variables>
    <Product>VARIABLE_NAME</Product>
</Variables>

Örnek

Aşağıdaki örnek, API ürün adını myproductvar.name özel akış değişkeninden alır daha fazla bilgi edinin.

<Variables>
    <Product>myproductvar.name</Product>
</Variables>

AssignMessage veya JavaScript gibi politikaları kullanarak özel akış değişkenlerini ayarlayabilirsiniz.

<Product>

API ürün adını içeren değişkeni belirtir.

Varsayılan Değer Yok
Zorunlu mu? İsteğe bağlı
Tür Dize
Üst Öğe <Variables>
Alt Öğeler Yok

<Product> öğesi şu söz dizimini kullanır:

Söz dizimi

<Product>VARIABLE_NAME</Product>

Örnek

Aşağıdaki örnek, API ürün adını myproductvar.name özel akış değişkeninden alır daha fazla bilgi edinin.

<Product>myproductvar.name</Product>

AssignMessage veya JavaScript gibi politikaları kullanarak özel akış değişkenlerini ayarlayabilirsiniz.

<FaultResponse>

Bir hata oluşursa istekte bulunan istemciye döndürülen yanıt mesajını tanımlar. Yanıtı özelleştirebilirsiniz göre uyarlayabilirsiniz. Daha fazla bilgi için öğesine ve tüm alt öğelerine bakın. FaultResponse konusuna bakın.

Akış değişkenleri

<MonetizationLimitsCheck> öğesinin ContinueOnError özelliği true olarak değiştirildi, herhangi bir hata bildirilmedi. Bu durumda, akış değişkenleri, mint.limitsViolated, mint.isDeveloperSuspended ve mint.limitsPolicyError otomatik olarak ayarlanır. Bu değişkenler, istisnaları işleme alınır.