Mem-proxy layanan SOAP

Anda sedang melihat dokumentasi Apigee Edge.
Buka dokumentasi Apigee X.
info

Yang akan Anda pelajari

Melalui tutorial ini, Anda akan mempelajari cara:

  • Buat proxy API Edge dari file WSDL.
  • Ketahui perbedaan antara jenis proxy SOAP RESTful dan proxy SOAP pass-through.

Dalam tutorial ini, Anda akan mempelajari cara menempatkan proxy API Edge di depan layanan web berbasis SOAP.

Tutorial ini menggambarkan cara membuat RESTful API baru di depan layanan berbasis SOAP Anda. Meskipun tidak dijelaskan secara mendetail di sini, Anda juga dapat membuat proxy pass-through yang menerima payload SOAP dan meneruskannya ke layanan backend.

Yang Anda butuhkan

Membuat proxy

Di sini, Anda akan meminta Edge membuat proxy yang akan berada di depan layanan SOAP. Ada dua jenis proxy SOAP API:

  • Jenis proxy REST-SOAP-REST menghasilkan RESTful API baru dengan lapisan terjemahan ke SOAP. Klien memanggilnya seperti layanan RESTful lainnya, dengan meneruskan parameter kueri yang diperlukan oleh layanan backend. Edge menerjemahkannya ke dalam payload SOAP yang diharapkan oleh layanan.
  • Jenis proxy pass-through proxy memungkinkan klien untuk meneruskan payload SOAP. Cara ini memungkinkan panggilan layanan SOAP memanfaatkan fitur pengelolaan Edge.

Edge

Untuk membuat proxy layanan SOAP menggunakan UI Edge:

  1. Login ke apigee.com/edge.
  2. Pilih Develop > API Proxies di menu navigasi kiri.
  3. Klik +Proxy.
  4. Klik SOAP service.
  5. Di halaman detail Proxy, masukkan informasi berikut:

    Kolom Deskripsi
    Sumber WSDL

    Pilih: URL

    Salin dan tempel URL WSLD berikut di kolom Masukkan URL:

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

    Klik: Validasi

    Apigee Edge mendapatkan file WSDL dan membacanya untuk menemukan daftar operasi yang didukung layanan SOAP.

    Nama

    Biarkan apa adanya: delayedstockquote

    Ini adalah nama untuk proxy API yang Anda buat.

    Jalur dasar Biarkan apa adanya: /delayedstockquote
    Deskripsi Tambahkan deskripsi secara opsional, seperti: Stock quote WSDL API Proxy
  6. Klik Berikutnya.
  7. Di halaman Common policies, di bagian Security: Authorization, pilih Pass through (no authorization).
  8. Klik Berikutnya.
  9. Di halaman WSDL operations, pilih: REST to SOAP to REST.

    Setelah Anda memilih jenis proxy, Edge akan menampilkan daftar operasi yang akan menghasilkan jalur REST API. Daftar ini memungkinkan Anda memilih dari antara operasi yang ditemukan di WSDL (jika Anda memiliki kumpulan tertentu yang Anda cari). Perhatikan bahwa tabel juga menampilkan resource yang dapat digunakan klien REST untuk memanggil layanan SOAP backend.

    Biarkan semua pilihan lain di halaman ini seperti apa adanya.

  10. Klik Berikutnya.
  11. Setujui default Virtual Host dengan mengklik Next.
  12. Di halaman Ringkasan, di bagian Deployment Opsional, klik Uji, lalu klik Buat dan deploy.

    Edge membuat proxy API RESTful dan men-deploy-nya ke lingkungan test. Dari WSDL, ditentukan operasi yang didukung, parameter input, dan sebagainya. Edge menyarankan metode HTTP yang akan digunakan untuk setiap operasi. Biasanya, Edge menerjemahkan operasi menjadi permintaan GET, yang memiliki keuntungan dapat di-cache. Edge juga menyiapkan endpoint target backend, yang dapat bervariasi per operasi SOAP.

    Kecuali jika Anda menyesuaikan proxy API baru (dan Anda tidak melakukannya dalam tutorial ini), hanya itu yang perlu dilakukan. Anda dapat melanjutkan pengujian proxy API baru.

Classic Edge (Private Cloud)

Untuk membuat proxy layanan SOAP menggunakan UI Edge Klasik:

  1. Login ke http://ms-ip:9000, dengan ms-ip adalah alamat IP atau nama DNS node Server Pengelolaan.
  2. Pilih APIs > API Proxies di menu navigasi atas.
  3. Klik + API Proxy.
  4. Klik SOAP service.
  5. Di halaman detail Proxy, masukkan informasi berikut:

    Kolom Deskripsi
    WSDL

    Pilih: Contoh URL

    Kemudian pilih:
    ...delayedstockquote.asmx?WSDL

    Klik: Validasi

    Apigee Edge mendapatkan file WSDL dan membacanya untuk menemukan daftar operasi yang didukung layanan SOAP.

    Nama Proxy

    Masukkan: delayedstockquote

    Ini adalah nama proxy yang Anda buat.

    Proxy Base Path dan Description Biarkan apa adanya.
  6. Klik Berikutnya.
  7. Di halaman WSDL, buat pilihan berikut:
    Di kolom ini lakukan hal ini
    Jenis Proxy API

    Pilih: REST to SOAP to REST

    Setelah Anda memilih jenis proxy, Edge akan menampilkan daftar operasi yang akan menghasilkan jalur REST API, seperti yang ditunjukkan di sini. Daftar ini memberi Anda kesempatan untuk memilih dari antara operasi yang ditemukan di WSDL (jika Anda memiliki kumpulan tertentu yang Anda cari). Perhatikan bahwa tabel juga menampilkan resource yang dapat digunakan klien REST untuk memanggil layanan SOAP backend.

    Untuk saat ini, biarkan set operasi pertama dipilih.

    Jenis Port: DelayedStockQuoteSoap Pilih ketiga operasi WSDL. Biarkan setelan lainnya seperti apa adanya.

  8. Klik Berikutnya.
  9. Di halaman Keamanan, pilih Teruskan (tidak ada).
  10. Klik Berikutnya.
  11. Terima default Virtual Host, lalu klik Next.
  12. Di halaman Build, terima setelan default dan klik Build and Deploy agar Edge mulai membuat proxy.

    Edge membuat proxy API RESTful. Dari WSDL, ditentukan operasi yang didukung, parameter input, dan sebagainya. Edge menyarankan metode HTTP yang akan digunakan untuk setiap operasi. Biasanya, Edge menerjemahkan operasi menjadi permintaan GET, yang memiliki keuntungan dapat di-cache. Edge juga menyiapkan endpoint target backend, yang dapat bervariasi per operasi SOAP.

    Kecuali jika Anda menyesuaikan proxy baru (dan Anda tidak melakukannya dalam tutorial ini), hanya itu yang perlu dilakukan. Anda dapat melanjutkan untuk menguji proxy baru.

Menguji proxy

Untuk mencoba proxy yang telah Anda buat, buka command prompt dan gunakan cURL. Ketik perintah di bawah, dengan:

  • ORG adalah nama organisasi Edge tempat Anda membuat proxy.
  • ENV adalah lingkungan tempat proxy di-deploy.
  • DOMAIN sesuai dengan instance Edge yang Anda gunakan.
curl "https://{ORG}-{ENV}.{DOMAIN}/delayedstockquote/quote?StockSymbol=GOOG&LicenseKey=0"

Misalnya, jika organisasi Anda adalah docfood, lingkungan adalah test, dan Anda menggunakan cloud perusahaan Edge, Anda akan menjalankan perintah seperti ini:

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

Jika Anda memasukkan GOOG untuk parameter kueri StockSymbol, Anda akan mendapatkan harga saat ini untuk saham Kelas C Alphabet Inc. Contoh:

{  
   "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
      }
   }
}

Mendapatkan Spesifikasi OpenAPI yang dibuat otomatis

Saat Anda memproksi layanan SOAP menggunakan "REST to SOAP to REST", Edge akan otomatis membuat Spesifikasi OpenAPI. Anda dapat menggunakan Spesifikasi OpenAPI untuk membuat dokumentasi API bagi API.

Untuk mendapatkan Spesifikasi OpenAPI, cukup buka URL ini:

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

Kredit tambahan: Bagaimana cara mengetahui resource, kata kerja, dan parameter kueri yang akan digunakan?

Dalam panggilan API pengujian, Anda menggunakan parameter kueri dan resource tertentu dalam panggilan cURL ke layanan SOAP backend. Namun, bagaimana Anda mengetahuinya sendiri?

Resource dan kata kerja

Di wizard proxy API saat membuat proxy, Anda melihat cara operasi SOAP dipetakan ke kata kerja dan resource API. Namun, jika Anda tidak mencatatnya, berikut cara mengetahuinya setelah proxy dibuat.

Di tab Develop proxy API, di panel Navigator kiri, Anda akan melihat daftar alur di bagian Proxy Endpoints. Klik alur yang Anda inginkan. Misalnya, alur GetQuote adalah kandidat yang baik. Kemudian, lihat XML di panel Kode, yang menampilkan jalur dan kata kerja resource untuk alur dalam elemen <Condition>: /quote dan GET.

Parameter kueri

Dengan alur GetQuote yang dipilih, klik kebijakan pertama dalam tampilan alur grafis. Kebijakan ini harus berupa kebijakan Extract Variables yang mengambil parameter kueri yang diharapkan akan diteruskan: StockSymbol dan LicenseKey. (Jika Anda melakukan penelusuran web untuk layanan SOAP, Anda akan mengetahui apa yang harus diteruskan untuk LicenseKey.)

Parameter kueri yang diambil disimpan sebagai variabel dan digunakan oleh kebijakan berikutnya untuk membuat pesan SOAP.