İstek ve yanıt akışı

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

Bu konuda neler öğreneceksiniz?

Bu konuyu okuduktan sonra, şunları öğrenmiş olacaksınız:

  • Apigee Edge'de istek ve yanıt akışı nedir?
  • İstek ve yanıt akışı ne zaman kullanılır?
  • İstek ve yanıt akışını etkinleştirme
ziyaret edin.

İstek ve yanıt akışı nedir?

Varsayılan olarak HTTP akışı devre dışıdır ve HTTP isteği ile yanıt yükleri bir API proxy ardışık düzeni tarafından işlenmeden önce arabelleğe alınır. Bu ayarı değiştirebilirsiniz. daha fazla kontrol sahibi olabilir. Akış etkinleştirildiğinde, istek ve yanıt yükleri istemci uygulamasında (yanıtlar için) ve hedef uç noktasında (yanıtlar için) istekleri) arasında yer alır.

Yayını ne zaman etkinleştirmeliyim?

API proxy'niz çok büyük istekleri ve/veya yanıtları işliyorsa (boyut sınırları için Akış hakkında bilmeniz gereken diğer noktalar aşağıdan), akışı etkinleştirmeyi düşünebilirsiniz.

Akış hakkında diğer bilmem gerekenler neler?

Mesaj yük boyutu Edge Cloud'da 10 MB ile sınırlıdır ve Akış etkin olsa bile Private Cloud. Akışsız istek ve yanıtlarda, bu boyut protocol.http.TooBigBody hatasına neden olur.

Özel Bulut dağıtımları için Edge'de, akışta olmayan istek/yanıt boyutunu değiştirebilirsiniz limit. Değişikliği üretime dağıtmadan önce test ettiğinizden emin olun.

  • 4.16.01'den önceki Edge for Private Cloud sürümleri için:

    Tüm İleti İşleyicilerde http.properties dosyasını düzenleyerek limitini belirleyin ve ardından yeniden başlatınHTTPResponse.body.buffer.limit Mesaj İşleyen.
  • Edge for Private Cloud'un 4.16.01 ve sonraki sürümleri için:
    1. /<inst_root>/apigee/customer/application/message-processor.properties dosyasını düzenleyin. Dosya yoksa dosyayı oluşturun.

    2. conf_http_HTTPResponse.body.buffer.limit değerini ayarlayın. özelliğini message-processor.properties içinde kullanın. Örneğin, örnek:
      conf_http_HTTPResponse.body.buffer.limit=5m

    3. Mesaj İşleyici'yi yeniden başlatın:
      &gt; /<inst_root>/ ekip/Apigee-service/bin/gelir-hizmeti Edge-message-processor yeniden başlat

    4. Tüm mesaj işleyenler için bu işlemi tekrarlayın.

ziyaret edin.

İstek ve yanıt akışını etkinleştirme

İstek akışını etkinleştirmek için request.streaming.enabled eklemeniz gerekir özelliğini proxy paketindeki ProxyEndpoint ve TargetEndpoint tanımlarına ekleyip true. Benzer şekilde, yanıt akışını etkinleştirmek için response.streaming.enabled özelliğini ayarlayın.

Bu yapılandırma dosyalarını; temsil eder. Yerel olarak geliştirme yapıyorsanız bu tanım dosyaları apiproxy/proxies konumundadır ve apiproxy/targets.

Bu örnekte, TargetEndpoint'te hem istek hem de yanıt akışının nasıl etkinleştirileceği gösterilmektedir belirler.

<TargetEndpoint name="default">
  <HTTPTargetConnection>
    <URL>http://mocktarget.apigee.net</URL>
    <Properties>
      <Property name="response.streaming.enabled">true</Property>
      <Property name="request.streaming.enabled">true</Property>
      <Property name="supports.http10">true</Property>
      <Property name="request.retain.headers">User-Agent,Referer,Accept-Language</Property>
      <Property name="retain.queryparams">apikey</Property>
    </Properties>
  </HTTPTargetConnection>
</TargetEndpoint>

Bu örnekte, ProxyEndpoint'te yanıt ve istek akışının nasıl etkinleştirileceği gösterilmektedir tanım:

<ProxyEndpoint name="default">
  <HTTPProxyConnection>
    <BasePath>/v1/weather</BasePath>
    <Properties>
      <Property name="allow.http10">true</Property>
      <Property name="response.streaming.enabled">true</Property>
      <Property name="request.streaming.enabled">true</Property>
    </Properties>
  </HTTPProxyConnection>
</ProxyEndpoint>

Uç nokta tanımlarını yapılandırma hakkında daha fazla bilgi edinmek için Uç nokta özellikleri referansı başlıklı makaleyi inceleyin.

İlgili kod örnekler

GitHub'daki API proxy örneklerini indirmek ve kullanmak kolaydır. Daha fazla bilgi için Örnek API proxy'lerini kullanma bölümüne bakın. örnekleri indirin ve kullanın.

Akış özelliği sunan örnek proxy'ler şunlardır: