mesaj akışı değişkeni

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

message akış değişkenine ve özelliklerine erişim, içindeki noktaya bağlıdır erişildiği API Proxy Akışı. Her bağlamda kullanılabilir ancak bazı nesneler request veya response gibi eşleme türleri de yoktur.

Kullanım alanları

message akış değişkeninin ana kullanım alanı, proxy'nizin hata akışı: request ve response akış değişkenleri kapsam dışında.

Örneğin, hata akışında response nesnesi kullanılamıyor. Yapabilecekleriniz: JavaScript politikasıyla response nesnesinde yanıt başlıkları ayarlayabiliyor. size yardımcı olabilir. Bunun yerine, aşağıdakilerden birini kullanabilirsiniz:

Bu nesnelerin her ikisi de hata akışında kullanılabilir ve yanıt ayarlamak için kullanılabilir başlıklarına bir JavaScript politikası içinden erişilebilir veya akışı kullanabilen diğer politikalardan değişkenlerine karşılık gelir.

Üstbilgiler ve/veya görev ayarları gibi değerleri atamak için assignMessage politikasını yanıt nesnesine bakalım. "İletiyi ata", geçişi otomatik olarak gerçekleştirir. bağlamı hakkında daha fazla bilgi edinin.

message değişkeninin bir başka kullanım alanı da yanıt verilerini MessageLogging politikası ile PostClientFlow. message nesnesini kullanırsanız hem yanıt bilgilerini hem de hata koşullarını takip ederek sorunsuz şekilde temsil eder.

Örnekler

Hata akışında, JavaScript politikasından bir yanıt üstbilgisi ayarlamak için şu iki yöntemden birini kullanabilirsiniz: error veya message. Örneğin:

context.setVariable('error.header.FOO-1', 'error_header');

VEYA

context.setVariable('message.header.FOO-2', 'message_header');

Ancak aşağıdaki ifade çalışmaz:

context.setVariable('response.header.FOO-3', 'response_header');

Bu durumda, response değişkeni hata akışı. (Bir izde, bu durumun eşit bir eğik çizgiyle işaretlemelisiniz.)

Tek bir politikada hem başarı hem de hata akışları için yanıt başlıkları ayarlamak isterseniz message, bir JavaScript politikasında kullanılabilir. Örneğin:

<faultrules>
  <faultrule name="invalid_key_rule">
    <step>
      <name>SetResponseHeaders</name>
    </step>
    <condition>(fault.name = "InvalidApiKey")</condition>
  </faultrule>
</faultrules>

Politikada aşağıdaki gibi bir kod, herhangi bir akış bağlamında hata/yanıt başlığını belirler:

context.setVariable('message.header.FOO-1', 'the header value');

Aynı politikayı normal ProxyResponse akışında yeniden kullanabilirsiniz, message tüm bağlamlarda kullanılabilir.