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>

Bu öğe, tüm politikalarda ortak olan aşağıdaki özelliklere sahiptir:

Özellik Varsayılan Zorunlu mu? Açıklama
name Yok Zorunlu

Politikanın dahili adı. name özelliğinin değeri harf, sayı, boşluk, kısa çizgi, alt çizgi ve nokta içerebilir. Bu değer 255 karakteri aşamaz.

İsteğe bağlı olarak, politikayı yönetim kullanıcı arayüzü proxy düzenleyicisinde farklı, doğal bir dille etiketlemek için <DisplayName> öğesini kullanın.

continueOnError yanlış İsteğe bağlı Politika başarısız olduğunda hata döndürmek için "false" değerine ayarlayın. Bu, çoğu politika için beklenen bir durumdur. Bir politika başarısız olsa bile akış yürütmenin devam etmesi için değeri "true" olarak ayarlayın.
enabled true İsteğe bağlı Politikayı uygulamak için "true" (doğru) değerine ayarlayın. Politikayı "kapalı" hale getirmek için "false" değerine ayarlayın. Politika, bir akışa bağlı kalsa bile zorunlu kılınmaz.
async   yanlış Kullanımdan kaldırıldı Bu özellik kullanımdan kaldırıldı.
.

Alt öğe referansı

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

<DisplayName>

Politikayı name özelliğine ek olarak farklı, daha doğal bir ada sahip yönetim arayüzü proxy düzenleyicisi.

<DisplayName> öğesi tüm politikalarda ortaktır.

Varsayılan Değer Yok
Zorunlu mu? İsteğe bağlı. <DisplayName> değerini çıkarırsanız politikanın name özelliği kullanılıyor
Tür Dize
Üst Öğe &lt;PolicyElement&gt;
Alt Öğeler Yok

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

Söz dizimi

<PolicyElement>
  <DisplayName>policy_display_name</DisplayName>
  ...
</PolicyElement>

Örnek

<PolicyElement>
  <DisplayName>My Validation Policy</DisplayName>
</PolicyElement>

<DisplayName> öğesinin özelliği veya alt öğesi yok.

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