Permintaan API Eksternal
Mengirim permintaan API eksternal menggunakan Appmaster.io dalam praktik
Tidak terlalu banyak teori?
Mari kita mempraktekkannya. Mari buka AppMaster , buat permintaan API dengan menggunakannya, dan dapatkan pemahaman yang lebih baik tentang cara kerja permintaan ini.
Pembuatan Permintaan API Eksternal
Permintaan API dibuat di bagian "Logika bisnis", di tab "Permintaan API Eksternal".
Saatnya klik “+ Permintaan API Baru”
Nama dan deskripsi dapat diatur untuk apa saja, hanya untuk penggunaan pribadi kami.
Mari kita berurusan dengan data yang benar-benar penting.
Persyaratan minimum untuk membuat permintaan adalah menentukan Metode dan alamatnya (URL). Mari kita mulai dengan yang terakhir.
URL
URL - Uniform Resource Locator. Alamat yang diberikan ke sumber daya tertentu di Internet. Versi paling akrab dari sumber daya semacam itu adalah halaman HTML - kami memasukkan URL-nya di bilah alamat browser dan membuka situs yang diinginkan. Pada saat yang sama, sumber daya itu sendiri dapat berupa apa saja, gambar, video, kumpulan data. Hal utama adalah bahwa sumber daya ini memiliki penunjuk khusus - URL tempat Anda dapat mengirim permintaan untuk mendapatkan sumber daya ini.
Metode
Mengacu pada data di alamatnya, kami juga menunjukkan metode (Anda juga dapat mengatakan jenisnya) permintaan, yaitu, kami menunjukkan apa yang sebenarnya perlu dilakukan dengan data ini.
Ketika kami mengirim permintaan untuk tugas modul pertama, kami menerima data. Ini adalah metode GET. Metode ini adalah metode yang paling jelas dan juga satu-satunya yang diperlukan. Oleh karena itu, meskipun kami tidak menentukannya secara eksplisit, secara default masih diasumsikan bahwa ini adalah GET.
Mari kita lihat metode lain apa yang ada.
Standar HTTP sendiri tidak membatasi jumlah metode yang dapat digunakan. Pada saat yang sama, hanya beberapa metode paling standar yang masih digunakan untuk menjaga kompatibilitas. Ada 5 metode berbeda yang dapat digunakan dalam permintaan API AppMaster.
DAPATKAN . Itu sudah ditangani. Metode meminta penyediaan sumber daya, dan menerima data.
POSTING Untuk mengambil data dari suatu tempat, Anda harus terlebih dahulu menempatkan data ini di sana. Metode POST melakukan hal itu. Mengirim data ke server, membuat sumber daya.
PUT . Mirip dengan metode POST, tetapi tugasnya adalah memperbarui data. Itu tidak membuat data baru, tetapi menggantikan data yang ada, memperbaruinya.
HAPUS . Seperti namanya, itu menghapus data.
PATCH . Metode ini mirip dengan PUT, tetapi digunakan untuk memperbarui sebagian data, daripada menggantinya seluruhnya. Misalnya, menggunakan metode PATCH, Anda dapat mengubah judul artikel, atau mengubah nilai beberapa parameter.
Penting untuk mempertimbangkan fakta bahwa server tidak diharuskan untuk melakukan persis apa yang ditentukan dalam metode ini sama sekali. Kami dapat mengirim alamat beberapa halaman dengan metode DELETE, tetapi ini tidak berarti bahwa server benar-benar akan menghapusnya. Tapi, murni secara teoritis, dia bisa melakukan ini dengan perintah GET. Atau jangan mengubah apa pun, tetapi pada saat yang sama mengirim data sebagai tanggapan terhadap POST. Hanya karena pengembang mengonfigurasinya seperti itu.
Di sinilah REST berperan, yang mengatakan bahwa inilah saatnya untuk menyetujui kepatuhan terhadap perintah, hentikan kekacauan dan lakukan persis apa yang ditunjukkan dalam metode ini. Paling tidak, ini harus menjadi tugas utama (walaupun belum tentu satu-satunya). Misalnya, saat mentransfer konten artikel menggunakan metode GET, Anda dapat sekaligus meningkatkan penghitung jumlah penayangannya sebanyak 1.
Jadi, kami menemukan di mana data itu berada dan apa yang bisa dilakukan dengannya. Mari kita melangkah lebih jauh, mari kita lihat komponen lain apa yang dapat dimiliki permintaan.
Parameter URL
Parameter URL . Ada situasi di mana kita hanya mengetahui sebagian dari URL. Contohnya adalah artikel di situs web Appmaster.io. Alamat awal untuk semua artikel adalah sama - https://appmaster.io/blog/ . Tetapi kemudian setiap artikel memiliki judulnya sendiri dan, karenanya, bagian individualnya sendiri untuk indikasi yang tepat dari artikel khusus ini.
Dalam situasi seperti itu, Params URL digunakan. Kami segera meresepkan bagian umum, dan membiarkan sisanya diputuskan dalam proses. Hasilnya, URL ditulis dalam bentuk https://appmaster.io/blog/:id/
Bagian yang diketahui ditulis apa adanya, dan bagian variabel ditempatkan setelah tanda “:”. Nama bagian variabel ini (sudah tanpa “:”) ditambahkan ke daftar parameter. Dalam hal ini, mungkin ada beberapa bagian variabel, dan lokasinya ada di mana saja di URL.
Parameter Kueri
Parameter Kueri . Ingat ketika kami mengirim permintaan ke boreapi.com di modul pertama? Dan selain alamat, data tambahan ditentukan. Itu adalah Param Kueri.
Mereka ditulis setelah URL dan dipisahkan oleh tanda “?” tanda. Nama parameter, tanda "=" dan nilai parameter itu sendiri ditunjukkan. Jika beberapa parameter digunakan sekaligus, mereka dipisahkan oleh tanda “&”.
Namun, saat menentukan parameter di AppMaster, Anda tidak perlu memikirkan aturan permintaan. Semuanya akan diformat dengan benar secara otomatis. Anda hanya perlu menentukan nama parameter itu sendiri dan menambahkannya ke daftar.
Param Kueri digunakan jika sumber datanya sama, tetapi data itu sendiri mungkin berbeda. Misalnya, Boredapi berisi daftar besar hal yang harus dilakukan. Tetapi kami hanya tertarik pada yang ditujukan untuk satu orang dan itulah yang kami tentukan dalam parameter permintaan.
Kasus penggunaan lainnya adalah membatasi jumlah data. Misalnya, kita dapat mengakses beberapa daftar, tetapi hanya meminta 5 entri pertama dari daftar tersebut. Kuantitas ini juga bisa menjadi parameter kueri.
Pilihan lainnya adalah kunci akses. Anda mungkin telah menggunakan opsi ini di modul 1 saat merujuk ke Alphavantage. Data dapat diperoleh hanya setelah pendaftaran dan pengiriman kunci pribadi dalam parameter permintaan.
Perhatikan halaman yang Anda kunjungi di Internet, Anda mungkin juga akan menemukan berbagai parameter di dalamnya. Misalnya, buka halaman cuaca Ventusky.com, dalam parameter kueri nilai geografis lintang dan bujur dikirim.
Header
Header . Minta header. Biasanya header berisi informasi layanan tentang permintaan (meta-informasi). Header memungkinkan server untuk mendapatkan informasi lebih lanjut tentang klien yang meminta data. Header dapat berisi informasi tentang browser mana yang digunakan, pengkodean apa yang diharapkan dari respons, dalam bahasa apa, waktu permintaan yang tepat, dan banyak lagi. Dalam hal akses ke data yang dilindungi, header mungkin berisi kunci otorisasi.
Dalam kebanyakan kasus, header bersifat opsional. Bahkan di modul pertama, kami sudah membuat permintaan di mana kami tidak menentukan header apa pun (meskipun ini tidak berarti bahwa permintaan itu benar-benar dikirim tanpa header).
Tubuh
Tubuh . Badan permintaan. Permintaan GET biasanya dilakukan tanpa itu, tetapi jika kita ingin mengirim beberapa data ke server, mengirim permintaan POST atau PUT, maka data ini ditempatkan di badan permintaan. Pada saat yang sama, Anda dapat menempatkan data dengan kompleksitas apa pun di badan permintaan, misalnya, mengirim file video, dan tidak terbatas pada beberapa nomor atau string teks.