Alat pengembangan

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

Sebagai penyedia layanan, Anda mengembangkan API untuk digunakan oleh aplikasi klien. Untuk membuat, mengonfigurasi, dan mengelola proxy API dan produk API, Anda dapat menggunakan UI atau membuat permintaan HTTP ke API untuk mengakses layanan RESTful, seperti yang dijelaskan di bagian berikut.

Menggunakan UI Edge

UI Apigee Edge adalah alat berbasis browser yang dapat Anda gunakan untuk membuat, mengonfigurasi, dan mengelola proxy API dan produk API. Subset tugas juga hanya dapat diselesaikan menggunakan API.

Tabel berikut menjelaskan cara mengakses UI Edge:

Produk Nama UI URL Akses
Edge UI Edge

Untuk mengakses UI Edge, gunakan URL berikut:

https://apigee.com/edge

Untuk tutorial tentang penggunaan UI Edge, lihat Membangun proxy API pertama Anda.

Edge untuk Private Cloud UI Edge Klasik

Guna mengakses UI Edge untuk Edge untuk Private Cloud, gunakan URL berikut:

http://ms-ip:9000

Dengan ms-ip adalah alamat IP atau nama DNS node Server Pengelolaan.

Dengan menggunakan UI Edge, Anda dapat:

  • Buat proxy API dengan mengedit kode dan melacak aliran permintaan melalui proxy Anda.
  • Buat produk API yang memaketkan proxy untuk eksposur ke permintaan klien.
  • Mengelola developer dan aplikasi developer.
  • Konfigurasikan lingkungan pengujian dan produksi Anda.
  • Mengimplementasikan aplikasi JavaScript dan Node.js.

Gambar berikut menampilkan editor proxy API di UI yang dapat Anda gunakan untuk membuat dan mengonfigurasi proxy API:

Menampilkan tab Develop yang dipilih dalam editor proxy API di UI Edge.

Menggunakan Edge API

Anda dapat menggunakan Edge API untuk mengelola resource API. API ini juga menyediakan akses ke kemampuan tingkat rendah yang tidak diekspos oleh UI.

Endpoint API sering kali mengambil data yang berisi informasi konfigurasi dan mengharuskan Anda meneruskan informasi autentikasi, seperti nama pengguna dan sandi, agar dapat mengaksesnya. Dengan mengikuti prinsip RESTful, Anda dapat memanggil metode GET, POST, PUT, dan DELETE HTTP di resource API mana pun.

Untuk mengetahui daftar lengkap API Apigee Edge, lihat Referensi API Apigee Edge.

Memahami jalur dasar Edge API

Jalur yang akan Anda gunakan dalam permintaan API menggabungkan hal berikut:

  • Jalur dasar yang menyertakan nama organisasi Anda. Contoh: https://api.enterprise.apigee.com/v1/organizations/org_name
  • Endpoint yang mengarah ke resource Edge yang Anda akses.

Misalnya, jika nama organisasi Anda adalah apibuilders, setiap panggilan yang Anda lakukan ke API akan menggunakan jalur dasar berikut:

https://api.enterprise.apigee.com/v1/organizations/apibuilders

Untuk mengambil daftar proxy API di organisasi, Anda akan memanggil GET di:

https://api.enterprise.apigee.com/v1/organizations/apibuilders/apis

Banyak resource dicakup dalam lingkungan. Dua lingkungan disediakan secara default: pengujian dan produksi. Misalnya, cache dicakup oleh lingkungan. Cache bersama yang disebut "mycache" disertakan secara default di setiap lingkungan.

Anda dapat mencantumkan cache dengan memanggil GET pada resource cache sebagai berikut:

https://api.enterprise.apigee.com/v1/organizations/apibuilders/environments/test/caches
https://api.enterprise.apigee.com/v1/organizations/apibuilders/environments/prod/caches

Autentikasi akses

Anda harus mengautentikasi diri ke server API saat memanggil API. Anda dapat melakukannya dengan salah satu cara berikut:

Selain itu, Apigee merekomendasikan agar Anda menggunakan autentikasi 2 langkah, seperti yang dijelaskan di Mengaktifkan autentikasi 2 langkah untuk akun Apigee.

Batas Edge API

Setiap organisasi dibatasi sesuai tarif panggilan Edge API berikut:

  • 10.000 panggilan per menit untuk organisasi dengan paket berbayar
  • 600 panggilan per menit untuk organisasi uji coba

Kode status HTTP 401 dan 403 tidak diperhitungkan terhadap batas ini. Setiap panggilan yang melebihi batas ini akan menampilkan kode status 429 Too Many Requests.

Tips menggunakan Edge API

Bagian ini menjelaskan beberapa teknik yang mempermudah penggunaan Edge API.

Menyingkat URL permintaan

Saat membuat URL permintaan untuk Edge API, Anda dapat menggunakan singkatan berikut:

  • /e = /environments
  • /o = /organizations
  • /r = /revisions

Jika Anda menggunakan singkatan, Anda harus menggunakannya secara konsisten. Artinya, singkatan semua elemen di jalur, seperti disebutkan di atas dan diilustrasikan dalam contoh berikut, atau tidak sama sekali. Menggunakan elemen lengkap dan yang disingkat pada jalur yang sama akan menghasilkan error.

Contoh:

THIS:
https://api.enterprise.apigee.com/v1/organizations/ahamilton-eval/environments/prod/apis/helloworld/revisions/1/deployments
CAN BE MUCH SHORTER:
https://api.enterprise.apigee.com/v1/o/ahamilton-eval/e/prod/apis/helloworld/r/1/deployments

Menjalankan perintah curl

Menggunakan klien HTTP untuk membuat permintaan ke API. Banyak contoh dalam dokumentasi menyediakan contoh permintaan API menggunakan curl, klien HTTP yang banyak digunakan. Jika perlu menginstal curl, Anda dapat mendownloadnya dari http://curl.haxx.se.

Panggilan ke API mendukung kompresi gzip pada respons. Jika Anda menetapkan 'Accept-Encoding: gzip, deflate' dalam panggilan API, setiap respons yang lebih besar dari 1.024 byte akan ditampilkan dalam format gzip.

Memformat permintaan dan respons XML dan JSON

Edge API menampilkan data sebagai JSON secara default. Untuk banyak permintaan, Anda bisa mendapatkan respons yang dikirim kembali sebagai XML. Untuk melakukannya, tetapkan header permintaan Accept ke application/xml, seperti yang ditampilkan dalam contoh berikut:

curl -H "Authorization: Bearer `get_token`" \
  -H "Accept: application/xml" \
  https://api.enterprise.apigee.com/v1/organizations/ahamilton-eval/apis/helloworld/revisions/1/policies/ \
  | xmllint --format -

Responsnya akan terlihat seperti berikut:

<List>
  <Item>SOAP-Message-Validation-1</Item>
  <Item>Spike-Arrest-1</Item>
  <Item>XML-to-JSON-1</Item>
</List>

Perhatikan bahwa contoh ini menggunakan prettyprint untuk menampilkan hasilnya dengan menyisipkan respons melalui xmllint.

Utilitas acurl tidak mendukung header Accept. Akibatnya, Anda hanya bisa mendapatkan respons berformat JSON dengan acurl.

Agar dapat menggunakan prettyprint untuk respons JSON, Anda dapat menggunakan library Python json.tool:

curl https://api.enterprise.apigee.com/v1/organizations/ahamilton-eval/apis/helloworld/revisions/1/policies/ \
  -H "Accept: application/json" \
  -H "Authorization: Bearer `get_token`" \
  | python -m json.tool

Berikut adalah contoh responsnya:

[
  "SOAP-Message-Validation-1",
  "Spike-Arrest-1",
  "XML-to-JSON-1"
]

Untuk XML, Anda dapat menggunakan xmllint:

curl https://ahamilton-eval-test.apigee.net/getstarted -u email_address | xmllint --format -

Saat melakukan POSTing atau PUTting payload dalam XML, gunakan header HTTP Content-type:

acurl -H "Content-type:text/xml" -X POST -d \
'<XMLPayload>
 </XMLPayload> ' \
https://api.enterprise.apigee.com/v1/organizations/apifactory/apis -u email_address

Lingkungan deployment

Setiap organisasi yang menggunakan Apigee Edge secara default memiliki setidaknya dua lingkungan yang dapat digunakan untuk mengembangkan, menguji, dan men-deploy API: "test" dan "prod". Gunakan lingkungan "pengujian" untuk mengembangkan dan menguji API Anda sebelum menyediakannya untuk publik. Hanya developer internal Anda yang dapat mengakses API yang di-deploy ke lingkungan pengujian. Deploy API Anda ke lingkungan "prod" agar tersedia untuk publik bagi developer aplikasi.

Proses debug dan pengujian

Apigee menyediakan alat perekaman aktivitas yang memungkinkan Anda men-debug alur permintaan dan respons menyeluruh. Hasil rekaman aktivitas menampilkan header dan payload respons dan permintaan, eksekusi kebijakan, nilai variabel, dan error yang mungkin terjadi selama alur.

Poin data utama untuk digunakan dalam pemecahan masalah:

  • Stempel waktu: Gunakan stempel waktu untuk melihat berapa lama waktu yang diperlukan untuk mengeksekusi setiap langkah. Membandingkan stempel waktu membantu Anda mengisolasi kebijakan yang memerlukan waktu eksekusi paling lama yang memperlambat panggilan API Anda.
  • Jalur dasar: Dengan memverifikasi jalur dasar, Anda dapat memastikan bahwa kebijakan mengarahkan pesan ke server yang benar.
  • Results of policy execution: Hasil ini memungkinkan Anda melihat apakah pesan diubah seperti yang diharapkan, seperti apakah pesan diubah dari XML ke JSON, atau apakah pesan sedang di-cache.

Gambar berikut menampilkan hasil rekaman aktivitas:

Menampilkan tab Trace yang dipilih dalam editor proxy API di UI Edge.

Setiap sesi Trace dibagi menjadi langkah-langkah utama berikut:

  • Permintaan asli yang diterima dari klien: Menampilkan kata kerja dan jalur URI permintaan dari aplikasi klien, header, data isi, dan parameter kueri.
  • Permintaan dikirim ke layanan backend Anda: Menampilkan pesan permintaan yang dikirim ke layanan backend oleh proxy API.
  • Respons yang ditampilkan oleh layanan backend: Menampilkan header respons dan payload yang ditampilkan oleh layanan backend.
  • Respons akhir yang dikirim ke klien: Pesan respons yang ditampilkan ke aplikasi klien yang meminta setelah alur respons dieksekusi.