Saya ingin tahu tentang webhook (apa itu webhook). Apa aplikasi webhook (skenario dunia nyata). Selain itu, apa perbedaan antara webhook & API?

0
RashedRahat 4 Maret 2020, 13:52

1 menjawab

Jawaban Terbaik

API adalah cara standar untuk berkomunikasi dengan layanan. Anda telah menandai REST dalam pertanyaan Anda, jadi saya akan fokus pada RESTful API menggunakan HTTP tetapi penting untuk diketahui bahwa API adalah istilah yang sangat umum.

Di dunia REST semuanya adalah sumber daya dan Anda menggunakan metode HTTP untuk menentukan tindakan apa yang ingin Anda ambil atau terapkan pada sumber daya itu. Misalnya, untuk mencantumkan semua pengguna di GitHub, Anda akan mengirim permintaan GET ke https://api .github.com/users. URL (khususnya bagian /users) mendefinisikan sumber daya apa yang Anda minati. Di sini sumber daya adalah kumpulan dari semua pengguna. Ada metode lain yang bisa Anda gunakan; seperti PUT untuk membuat atau memperbarui sumber daya. Untuk mempelajari lebih lanjut tentang berbagai metode, Anda dapat membaca spesifikasi HTTP.

Webhook sering digunakan bersama dengan API tetapi berfokus pada peristiwa. Mereka mengizinkan layanan untuk mengirimkan 'pemberitahuan' ketika suatu peristiwa terjadi atau beberapa kondisi terpenuhi.

GitHub sekali lagi merupakan contoh yang baik tentang kegunaan webhook. Katakanlah saya sedang membangun layanan yang mengirimkan email setiap kali seseorang memberikan komentar tentang suatu masalah di GitHub. Saya dapat menggunakan API GitHub (seperti di atas) untuk membuat daftar semua komentar tentang suatu masalah dan kemudian memeriksa apakah ada komentar baru sejak terakhir kali saya memeriksanya. Saya kemudian dapat mengulangi permintaan ini setiap beberapa detik. Ini dikenal sebagai polling. Masalahnya di sini adalah bahwa sebagian besar waktu saya memeriksa hasilnya tidak akan berubah. Ini akan membuang-buang sumber daya. Webook memungkinkan Pemrograman Berbasis Peristiwa. Alih-alih memeriksa secara acak, saya dapat menginstruksikan GitHub untuk mengirim layanan saya permintaan HTTP setiap kali komentar ditambahkan: alias webhook. Dalam arsitektur ini saya hanya perlu mengirim permintaan ke API GitHub ketika saya tahu pasti bahwa komentar baru telah ditinggalkan.

Secara keseluruhan, Anda tidak dapat benar-benar membandingkan API dan webhook. Tautan di antara mereka hanyalah bahwa webhook mengirim permintaan ke API.

1
jontypreston 4 Maret 2020, 12:49