{"id":5745,"date":"2024-11-05T11:36:08","date_gmt":"2024-11-05T11:36:08","guid":{"rendered":"https:\/\/blog.ultramsg.com\/mengendalikan-data-webhook-dalam-php-dan-mengubah-hala-ke-berbilang-titik-akhir\/"},"modified":"2024-11-05T11:36:09","modified_gmt":"2024-11-05T11:36:09","slug":"mengendalikan-data-webhook-dalam-php-dan-mengubah-hala-ke-berbilang-titik-akhir","status":"publish","type":"post","link":"https:\/\/blog.ultramsg.com\/ms\/mengendalikan-data-webhook-dalam-php-dan-mengubah-hala-ke-berbilang-titik-akhir\/","title":{"rendered":"Mengendalikan Data Webhook dalam PHP dan Mengubah Hala ke Berbilang Titik Akhir"},"content":{"rendered":"\n<p><strong>pengenalan:<\/strong> <\/p>\n\n<p>Webhooks adalah penting untuk menyepadukan perkhidmatan yang berbeza, membolehkan komunikasi masa nyata antara mereka. Mereka sering dicetuskan oleh peristiwa dalam satu sistem, menghantar data berstruktur ke titik akhir yang lain. Walau bagaimanapun, sesetengah sistem mengehadkan sokongan webhook kepada satu titik akhir. Dalam artikel ini, kita akan membincangkan cara mengendalikan data webhook dalam PHP, menyimpannya secara setempat, dan kemudian memajukannya ke berbilang titik akhir. Selain itu, kami akan meneroka pilihan bukan program menggunakan alat automasi untuk mencapai matlamat yang sama.    <\/p>\n\n<p><strong>Panduan Langkah demi Langkah untuk Menerima dan Mengalihkan Webhook dalam PHP<\/strong><\/p>\n\n<h3 class=\"wp-block-heading\">Menerima Data Webhook<\/h3>\n\n<p>Untuk menangkap data daripada webhook, gunakan PHP<code>file_get_contents()<\/code> berfungsi untuk membaca badan permintaan. Contoh ini menganggap data JSON, yang biasa digunakan dalam webhooks. Coretan kod di bawah menunjukkan cara menerima dan log data webhook.  <\/p>\n\n<pre class=\"wp-block-code\"><code><code data-enlighter-language=\"php\" class=\"EnlighterJSRAW\">&lt;?php\n\/\/ Capture the raw webhook data\n$data = file_get_contents(\"php:\/\/input\");\n$event = json_decode($data, true);\n\n\/\/ Log the event data (Optional)\nif (isset($event)) {\n    $file = 'log.txt';  \n    $log_data = json_encode($event) . \"\\n\";  \n    file_put_contents($file, $log_data, FILE_APPEND | LOCK_EX);\n}\n\n\/\/ Define the endpoints where data will be sent\n$endpoints = &#91;\n    \"https:\/\/example1.com\/webhook-endpoint\", \/\/ First endpoint\n    \"https:\/\/example2.com\/webhook-endpoint\"  \/\/ Second endpoint\n];\n\n\/\/ Function to send webhook data to another endpoint\nfunction forwardWebhook($url, $data) {\n    $ch = curl_init($url);\n    curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);\n    curl_setopt($ch, CURLOPT_POST, true);\n    curl_setopt($ch, CURLOPT_POSTFIELDS, $data);\n    curl_setopt($ch, CURLOPT_HTTPHEADER, &#91;\n        'Content-Type: application\/json',\n        'Content-Length: ' . strlen($data)\n    ]);\n    $response = curl_exec($ch);\n    curl_close($ch);\n\n    return $response;\n}\n\n\/\/ Send data to each endpoint in the list\nforeach ($endpoints as $endpoint) {\n    forwardWebhook($endpoint, json_encode($event));\n}\n?><\/code><\/code><\/pre>\n\n<p><strong>Penjelasan:<\/strong><\/p>\n\n<ul class=\"wp-block-list\">\n<li><strong>Menerima Data<\/strong> : Kami menggunakan<code>file_get_contents(\"php:\/\/input\")<\/code> untuk menangkap data yang diterima daripada webhook.<\/li>\n\n\n\n<li><strong>Log Data<\/strong> : Langkah ini adalah pilihan dan log data ke dalam fail (<code>log.txt<\/code> ) untuk pengesahan dan penyahpepijatan.<\/li>\n\n\n\n<li><strong>Titik akhir<\/strong> : Tentukan URL tempat data akan dimajukan.<\/li>\n\n\n\n<li><strong>Fungsi Pemajuan<\/strong> :<code>forwardWebhook()<\/code> adalah fungsi yang menggunakan<code>cURL<\/code> untuk menghantar data masuk<code>POST<\/code> format kepada setiap titik akhir yang ditentukan.<\/li>\n\n\n\n<li><strong>Menghantar Data<\/strong> : The<code>foreach<\/code> gelung menghantar data ke setiap titik akhir webhook dalam senarai yang ditentukan.<\/li>\n<\/ul>\n\n<h2 class=\"wp-block-heading\">  Menguji dan Memantau Skrip<\/h2>\n\n<p>Untuk memastikan skrip anda berfungsi seperti yang diharapkan, uji dengan pelbagai permintaan webhook. Sahkan setiap titik akhir menerima data dengan betul. Anda boleh meneliti<code>log.txt<\/code> fail untuk mengesahkan data diterima dan disimpan dengan betul sebelum dihantar semula.  <\/p>\n\n<h2 class=\"wp-block-heading\"><strong>Penyelesaian Alternatif: Menggunakan Alat Automasi<\/strong><\/h2>\n\n<p>Jika anda lebih suka pendekatan tanpa kod, beberapa platform automasi membenarkan anda mengurus dan mengubah hala webhook tanpa pengaturcaraan. Berikut ialah beberapa pilihan popular: <\/p>\n\n<ol class=\"wp-block-list\">\n<li><strong>Zapier<\/strong> : Zapier menawarkan platform intuitif untuk menyepadukan webhooks. Anda boleh mengkonfigurasinya untuk menerima acara webhook dan menyediakan &#8220;Zaps&#8221; untuk memajukan data ke berbilang titik akhir. Ia sesuai untuk pengguna bukan teknikal.  <\/li>\n\n\n\n<li><strong>Integromat (Make)<\/strong> : Integromat, kini dikenali sebagai Make, menyediakan aliran kerja fleksibel yang termasuk sokongan webhook. Anda boleh menerima data pada satu webhook dan membahagikannya merentas modul yang berbeza untuk dihantar ke pelbagai titik akhir. <\/li>\n\n\n\n<li><strong>IFTTT (If This Then That)<\/strong> : IFTTT ialah alat automasi ringkas yang sesuai untuk operasi webhook asas. Anda boleh menyediakan pencetus dan tindakan untuk menerima webhook dan menghantar data kepada berbilang perkhidmatan. <\/li>\n\n\n\n<li><strong>Microsoft Power Automate<\/strong> : Power Automate menawarkan automasi peringkat perusahaan dan keupayaan penyepaduan. Jika anda menggunakan ekosistem Microsoft, ini boleh menjadi pilihan yang mantap untuk mengendalikan dan mengedarkan data webhook. <\/li>\n\n\n\n<li><strong><a href=\"https:\/\/pipedream.com\/apps\/ultramsg\/\" data-type=\"link\" data-id=\"https:\/\/pipedream.com\/apps\/ultramsg\/\" target=\"_blank\" rel=\"noopener\">Pipedream<\/a><\/strong> : Pipedream ialah satu lagi alat yang sangat baik untuk pembangun dan bukan pembangun, membolehkan anda mengurus webhooks, mengubah data dan menghalakannya ke perkhidmatan yang berbeza.<\/li>\n\n\n\n<li><strong><a href=\"https:\/\/www.pabbly.com\/connect\/integrations\/ultramsg\/\" data-type=\"link\" data-id=\"https:\/\/www.pabbly.com\/connect\/integrations\/ultramsg\/\" target=\"_blank\" rel=\"noopener\">Pabbly Connect<\/a><\/strong> : Pabbly Connect ialah alat automasi yang berkuasa namun mudah yang membolehkan anda mengurus dan memajukan webhook dengan mudah. Dengan antara muka yang mesra pengguna, Pabbly Connect membolehkan pengguna menyediakan aliran kerja untuk menghalakan data ke berbilang titik akhir dengan lancar, menjadikannya pilihan yang baik untuk bukan pengaturcara yang ingin memperkemas aliran data webhook. <\/li>\n\n\n\n<li><strong><a href=\"https:\/\/integrately.com\/integrations\/ultramsg\" data-type=\"link\" data-id=\"https:\/\/integrately.com\/integrations\/ultramsg\" target=\"_blank\" rel=\"noopener\">Integrately<\/a><\/strong> : Integrately ialah alat automasi yang mudah tetapi berkesan yang membolehkan anda menyambungkan webhooks merentas berbilang platform dengan cepat. Dengan pilihan automasi pra-bina, Bersepadu membolehkan pengguna menyediakan aliran kerja tanpa konfigurasi yang luas, menjadikannya ideal untuk menghala data webhook merentasi berbilang titik akhir dengan usaha yang minimum. <\/li>\n<\/ol>\n\n<p>Setiap alat ini menyediakan antara muka langkah demi langkah untuk mengendalikan data webhook, menjadikannya mudah untuk menghantar data ke berbilang titik akhir dengan konfigurasi minimum.<\/p>\n\n<p><strong>Kesimpulan:<\/strong> Skrip PHP ini menerima data webhook dengan berkesan dan memajukannya ke berbilang titik akhir, mengelakkan pengehadan titik akhir tunggal. Ia log data untuk rujukan, memastikan anda tidak kehilangan maklumat walaupun satu titik akhir gagal. Bagi mereka yang memilih untuk tidak menggunakan kod, alat automasi seperti Zapier, Make dan IFTTT menawarkan alternatif praktikal, membolehkan anda mengubah hala webhook dengan mudah tanpa kemahiran pengaturcaraan.  <\/p>\n\n<figure class=\"wp-block-embed is-type-video is-provider-youtube wp-block-embed-youtube wp-embed-aspect-16-9 wp-has-aspect-ratio\"><div class=\"wp-block-embed__wrapper\"> \n<iframe loading=\"lazy\" title=\"Receive WhatsApp messages using PHP | WhatsApp api Webhook\" width=\"1200\" height=\"675\" src=\"https:\/\/www.youtube.com\/embed\/TfQOclLMIng?feature=oembed\" frameborder=\"0\" allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share\" referrerpolicy=\"strict-origin-when-cross-origin\" allowfullscreen><\/iframe>\n <\/div><\/figure>\n\n<p><br\/><br\/><\/p>\n\n<p><\/p>\n","protected":false},"excerpt":{"rendered":"<p>pengenalan: Webhooks adalah penting untuk menyepadukan perkhidmatan yang berbeza, membolehkan komunikasi masa nyata antara mereka. &#8230; <\/p>\n<p class=\"read-more-container\"><a title=\"Mengendalikan Data Webhook dalam PHP dan Mengubah Hala ke Berbilang Titik Akhir\" class=\"read-more button\" href=\"https:\/\/blog.ultramsg.com\/ms\/mengendalikan-data-webhook-dalam-php-dan-mengubah-hala-ke-berbilang-titik-akhir\/#more-5745\" aria-label=\"Read more about Mengendalikan Data Webhook dalam PHP dan Mengubah Hala ke Berbilang Titik Akhir\">Read More<\/a><\/p>\n","protected":false},"author":1,"featured_media":5727,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[245,324],"tags":[249,247,246,252],"class_list":["post-5745","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-api-whatsapp-ms","category-webhook-ms","tag-api-whatsapp-ms","tag-php-ms","tag-tutorial-ms","tag-webhook-ms","infinite-scroll-item","generate-columns","tablet-grid-50","mobile-grid-100","grid-parent","grid-25","no-featured-image-padding"],"_links":{"self":[{"href":"https:\/\/blog.ultramsg.com\/ms\/wp-json\/wp\/v2\/posts\/5745","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/blog.ultramsg.com\/ms\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/blog.ultramsg.com\/ms\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/blog.ultramsg.com\/ms\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/blog.ultramsg.com\/ms\/wp-json\/wp\/v2\/comments?post=5745"}],"version-history":[{"count":1,"href":"https:\/\/blog.ultramsg.com\/ms\/wp-json\/wp\/v2\/posts\/5745\/revisions"}],"predecessor-version":[{"id":5746,"href":"https:\/\/blog.ultramsg.com\/ms\/wp-json\/wp\/v2\/posts\/5745\/revisions\/5746"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/blog.ultramsg.com\/ms\/wp-json\/wp\/v2\/media\/5727"}],"wp:attachment":[{"href":"https:\/\/blog.ultramsg.com\/ms\/wp-json\/wp\/v2\/media?parent=5745"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/blog.ultramsg.com\/ms\/wp-json\/wp\/v2\/categories?post=5745"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/blog.ultramsg.com\/ms\/wp-json\/wp\/v2\/tags?post=5745"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}