SOAP hizmetine proxy ekleme

Apigee Edge belgelerini görüntülüyorsunuz.
Apigee X belgelerine gidin.
bilgi

Neler öğreneceksiniz?

Bu eğitim boyunca şunları öğreneceksiniz:

  • WSDL dosyasından Edge API proxy'si oluşturun.
  • RESTful SOAP proxy türü ve geçiş SOAP proxy'si arasındaki farkı öğrenin.

Bu eğiticide, SOAP tabanlı bir web hizmetinin önüne Edge API proxy'si yerleştirmeyi öğreneceksiniz.

Bu eğitim, SOAP tabanlı hizmetinizin önünde yeni bir RESTful API'nin nasıl oluşturulacağını gösterir. Burada ayrıntılı olarak açıklanmasa da, SOAP yükünü kabul eden ve bunu arka uç hizmetine geçiren bir geçiş proxy'si de oluşturabilirsiniz.

Gerekenler

Proxy oluşturma

Burada, SOAP hizmetinin önünde yer alacak proxy'yi Edge'in oluşturmasını sağlarsınız. İki tür SOAP API proxy'si vardır:

  • REST-SOAP-REST proxy türü, SOAP'a çeviri katmanına sahip yeni bir RESTful API oluşturur. İstemciler, diğer RESTful hizmetlerinde olduğu gibi bu parametreyi, arka uç hizmetinin ihtiyaç duyduğu sorgu parametrelerini iletir. Edge bu bilgiyi, hizmetin beklediği SOAP yüküne dönüştürür.
  • Geçiş proxy türü, istemcilerin bir SOAP yükünü geçirmesine olanak tanır. Bu, SOAP hizmet çağrılarının Edge yönetim özelliklerinden yararlanmasını sağlamanın bir yoludur.

Edge

Edge kullanıcı arayüzünü kullanarak bir SOAP hizmetine proxy göndermek için:

  1. apigee.com/edge adresinde oturum açın.
  2. Sol gezinme çubuğunda Geliştirme > API Proxy'leri öğesini seçin.
  3. +Proxy'yi tıklayın.
  4. SOAP hizmeti'ni tıklayın.
  5. Proxy ayrıntıları sayfasında aşağıdakileri girin:

    Alan Açıklayıcı
    WSDL kaynağı

    Seçin: URL

    Aşağıdaki WSLD URL'sini kopyalayıp URL girin alanına yapıştırın:

    https://ws.cdyne.com/delayedstockquote/delayedstockquote.asmx?wsdl

    Tıklayın: Doğrula

    Apigee Edge, WSDL dosyasını alır ve SOAP hizmetinin desteklediği işlemlerin listesini keşfetmek için bu dosyayı okur.

    Ad

    Olduğu gibi bırakın: delayedstockquote

    Bu, oluşturduğunuz API proxy'sinin adıdır.

    Temel yol Olduğu gibi bırakın: /delayedstockquote
    Açıklama İsteğe bağlı olarak Hisse senedi WSDL API Proxy'si gibi bir açıklama ekleyin.
  6. İleri'yi tıklayın.
  7. Ortak politikalar sayfasında, Güvenlik: Yetkilendirme altında Geçiş (yetkilendirme yok) seçeneğini belirleyin.
  8. İleri'yi tıklayın.
  9. WSDL işlemleri sayfasında şunu seçin: REST to SOAP to REST

    Proxy türünü seçtikten sonra Edge, REST API yolları oluşturacağı işlemlerin listesini görüntüler. Bu liste, WSDL'de bulunan işlemler arasından seçim yapmanızı sağlar (aradığınız belirli bir grup varsa). Tablonun, bir REST istemcisinin arka uç SOAP hizmetini çağırmak için kullanabileceği kaynakların da görüntülendiğini unutmayın.

    Sayfadaki diğer tüm seçimleri olduğu gibi bırakın.

  10. İleri'yi tıklayın.
  11. Next (İleri) seçeneğini tıklayarak Sanal Ana Makine varsayılanlarını kabul edin.
  12. Özet sayfasında, İsteğe Bağlı Dağıtım altında Test et'i ve ardından Oluştur ve dağıt'ı tıklayın.

    Edge, bir RESTful API proxy'si oluşturur ve bunu test ortamına dağıtır. WSDL'den hizmetin desteklediği işlemleri, giriş parametrelerini ve benzeri öğeleri belirler. Edge, her işlem için hangi HTTP yönteminin kullanılacağını önerir. Genellikle Edge, işlemleri GET isteklerine dönüştürür. Bu istekler önbelleğe alınabilir olma avantajına sahiptir. Edge, SOAP işlemine göre değişiklik gösterebilen arka uç hedef uç noktasını da ayarlar.

    Yeni API proxy'sini özelleştirmiyorsanız (ve bu eğiticide değilseniz) yapmanız gereken tek şey budur. Yeni API proxy'sini test etmeye devam edebilirsiniz.

Klasik Edge (Private Cloud)

Klasik Edge kullanıcı arayüzünü kullanarak bir SOAP hizmetine proxy göndermek için:

  1. http://ms-ip:9000 üzerinde oturum açın. Burada ms-ip, Yönetim Sunucusu düğümünün IP adresi veya DNS adıdır.
  2. Üst gezinme çubuğunda API'lar > API Proxy'leri seçeneğini belirleyin.
  3. + API Proxy'yi tıklayın.
  4. SOAP hizmeti'ni tıklayın.
  5. Proxy ayrıntıları sayfasında aşağıdakileri girin:

    Alan Açıklayıcı
    WSDL

    Seçin: Örnek URL

    Ardından şunları seçin:
    ...delayedstockquote.asmx?WSDL

    Tıklayın: Doğrula

    Apigee Edge, WSDL dosyasını alır ve SOAP hizmetinin desteklediği işlemlerin listesini keşfetmek için bu dosyayı okur.

    Proxy Adı

    Şunu girin: delayedstockquote

    Bu, oluşturduğunuz proxy'nin adıdır.

    Proxy Temel Yolu ve Açıklama Olduğu gibi bırakın.
  6. İleri'yi tıklayın.
  7. WSDL sayfasında şu seçimleri yapın:
    Bu alanda bunu yap
    API Proxy Türü

    Seçin: REST'ten SOAP'a ve ardından REST'e

    Proxy türünü seçtikten sonra Edge, burada gösterildiği gibi REST API yolları oluşturacağı işlemlerin listesini görüntüler. Bu liste, size WSDL'de bulunan işlemler arasından seçim yapma olanağı sunar (aradığınız belirli bir grup varsa). Tablonun, bir REST istemcisinin arka uç SOAP hizmetini çağırmak için kullanabileceği kaynakların da görüntülendiğini unutmayın.

    Şimdilik ilk işlem grubunu seçili bırakın.

    Bağlantı Noktası Türü: DelayedStockquoteSoap Üç WSDL işleminin hepsini seçin. Diğer ayarları olduğu gibi bırakın.

  8. İleri'yi tıklayın.
  9. Güvenlik sayfasında Geçiş (yok) seçeneğini belirleyin.
  10. İleri'yi tıklayın.
  11. Sanal Ana Makine varsayılanlarını kabul edin ve İleri'yi tıklayın.
  12. Derleme sayfasında varsayılanları kabul edin ve Edge'in proxy oluşturmaya başlaması için Derleme ve Dağıt'ı tıklayın.

    Edge, RESTful API proxy'si oluşturur. WSDL'den hizmetin desteklediği işlemleri, giriş parametrelerini ve benzeri öğeleri belirler. Edge, her işlem için hangi HTTP yönteminin kullanılacağını önerir. Genellikle Edge, işlemleri GET isteklerine dönüştürür. Bu istekler önbelleğe alınabilir olma avantajına sahiptir. Edge, SOAP işlemine göre değişiklik gösterebilen arka uç hedef uç noktasını da ayarlar.

    Yeni proxy'yi özelleştirmiyorsanız (ve bu eğiticide değilseniz) yapmanız gereken tek şey budur. Yeni proxy'yi test etmeye devam edebilirsiniz.

Proxy'yi test etme

Oluşturduğunuz proxy'yi denemek için bir komut istemi açın ve cURL kullanın. Aşağıdaki komutu yazın. Burada:

  • ORG, proxy'yi oluşturduğunuz Edge kuruluşunun adıdır.
  • ENV, proxy'nin dağıtıldığı ortamdır.
  • ALAN, kullandığınız Edge örneğine karşılık gelir.
curl "https://{ORG}-{ENV}.{DOMAIN}/delayedstockquote/quote?StockSymbol=GOOG&LicenseKey=0"

Örneğin, kuruluşunuz docfood, ortam test ise ve Edge kurumsal bulutunu kullanıyorsanız şuna benzer bir komut çalıştırırsınız:

curl "https://docfood-test.apigee.net/delayedstockquote/quote?StockSymbol=GOOG&LicenseKey=0"

StockSymbol sorgu parametresi için GOOG değerini girdiyseniz Alphabet Inc. C Sınıfı hisse senedinin geçerli fiyatını alırsınız. Örneğin:

{  
   "GetQuoteResponse":{  
      "GetQuoteResult":{  
         "StockSymbol":"GOOG",
         "LastTradeAmount":819.55,
         "LastTradeDateTime":"2017-02-13T14:33:00",
         "StockChange":5.88,
         "OpenAmount":816.0,
         "DayHigh":820.96,
         "DayLow":815.49,
         "StockVolume":785064,
         "PrevCls":813.67,
         "ChangePercent":"+0.72%",
         "FiftyTwoWeekRange":"663.28 - 841.95",
         "EarnPerShare":27.88,
         "PE":29.4,
         "CompanyName":"Alphabet Inc.",
         "QuoteError":false
      }
   }
}

Otomatik olarak oluşturulan OpenAPI Spesifikasyonunu alma

"REST to SOAP to REST" yöntemini kullanarak bir SOAP hizmetine proxy uyguladığınızda Edge otomatik olarak bir OpenAPI Belirtimi oluşturur. API için API dokümanları oluşturmak amacıyla OpenAPI Spesifikasyonu'nu kullanabilirsiniz.

OpenAPI Spesifikasyonunu almak için şu URL'yi ziyaret etmeniz yeterlidir:

curl https://{ORG}-{ENV}.{DOMAIN}/delayedstockquote/openapi.json

Ekstra kredi: Hangi kaynak, fiil ve sorgu parametrelerinin kullanılacağına nasıl karar veriyorsunuz?

Test API çağrısında, arka uç SOAP hizmetine yapılan cURL çağrınızda belirli bir kaynak ve sorgu parametreleri kullandınız. Peki bunu kendi başınıza nasıl öğrenebilirsiniz?

Kaynak ve fiil

Proxy oluştururken API proxy sihirbazında, SOAP işlemlerinin API fiilleri ve kaynaklarıyla nasıl eşleneceğini gördünüz. Ancak bunları yazmadıysanız proxy oluşturulduktan sonra bunları şu şekilde öğrenebilirsiniz.

API proxy'sinin Geliştirme sekmesinde, sol gezgin bölmesinde Proxy Uç Noktaları'nın altındaki akışların listesini görürsünüz. İlgilendiğiniz akışı tıklayın. Örneğin, GetQuote akışı iyi bir adaydır. Ardından, <Condition> öğesinde akışın kaynak yolunu ve fiili gösteren Kod bölmesinde XML'i görüntüleyin: /quote ve GET.

Sorgu parametreleri

GetQuote akışı seçildiğinde grafik akış görünümündeki ilk politikayı tıklayın. Bu politika, geçirilmesi beklenen sorgu parametrelerini yakalayan bir Değişkenleri Ayıklama politikası olmalıdır: StockSymbol ve LicenseKey. (SOAP hizmeti için web araması yaparsanız bu, Lisans Anahtarı için hangi bilgiyi iletmeniz gerektiğini size bildirir.)

Yakalanan sorgu parametreleri değişken olarak kaydedilir ve SOAP mesajını oluşturmak için bir sonraki politika tarafından kullanılır.