Không giống như các hệ thống truyền thống trong đó một hệ thống (đối tượng) tiếp tục thăm dò một hệ thống khác (người quan sát) để tìm một số dữ liệu, webhook cho phép người quan sát tự động đẩy dữ liệu vào hệ thống của đối tượng bất cứ khi nào một sự kiện xảy ra.
Điều này loại bỏ sự cần thiết phải theo dõi liên tục của đối tượng. Webhook hoạt động hoàn toàn trên Internet và do đó, tất cả giao tiếp giữa các hệ thống phải diễn ra dưới dạng thông báo HTTP.
Webhook dựa vào sự hiện diện của các URL tĩnh trỏ đến API trong hệ thống của chủ thể cần được thông báo khi một sự kiện xảy ra trong hệ thống của người quan sát. Một ví dụ về điều này sẽ là một ứng dụng web được thiết kế để thu thập và quản lý tất cả các đơn đặt hàng được đặt trên tài khoản Amazon của người dùng. Trong trường hợp này, Amazon đóng vai trò là người quan sát và Ứng dụng web quản lý đơn đặt hàng tùy chỉnh đóng vai trò là chủ đề.
Thay vì yêu cầu ứng dụng web tùy chỉnh gọi API của Amazon theo định kỳ để kiểm tra đơn hàng đã tạo, một webhook được tạo trong ứng dụng web tùy chỉnh sẽ cho phép Amazon tự động gửi đơn hàng mới được tạo trong ứng dụng web thông qua một URL đã đăng ký. Do đó, để cho phép sử dụng webhook, đối tượng phải có các URL được chỉ định chấp nhận thông báo sự kiện từ người quan sát. Điều này làm giảm tải đáng kể cho đối tượng vì các cuộc gọi HTTP chỉ được thực hiện giữa hai bên khi có sự kiện xảy ra.
Sau khi người quan sát gọi webhook của đối tượng, đối tượng có thể thực hiện hành động thích hợp với dữ liệu mới được gửi này. Thông thường, webhook được thực hiện thông qua các yêu cầu POST tới một URL cụ thể. Yêu cầu POST cho phép bạn gửi thông tin bổ sung cho đối tượng. Ngoài ra, nó cũng có thể được sử dụng để xác định trong số nhiều sự kiện có thể xảy ra thay vì tạo các URL webhook riêng biệt cho từng sự kiện.
Để triển khai các webhook gửi đến trên ứng dụng của mình, bạn cần thực hiện các bước cơ bản sau:
Cả webhook và API đều có mục tiêu thiết lập giao tiếp giữa các ứng dụng. Tuy nhiên, có một số ưu điểm và nhược điểm riêng biệt của việc sử dụng Webhook thay vì API để tích hợp ứng dụng.
Webhook có xu hướng trở thành giải pháp tốt hơn nếu các điểm sau phù hợp hơn với hệ thống được triển khai:
Sử dụng API nên được ưu tiên hơn webhook trong một số trường hợp khác.
Những điều quan trọng cần cân nhắc khi sử dụng API trên Webhook là:
Để giải quyết khả năng mất dữ liệu được gửi từ máy chủ khi webhook ngoại tuyến, bạn có thể sử dụng hàng đợi nhắn tin sự kiện để lưu trữ các cuộc gọi đó. Ví dụ về các nền tảng cung cấp chức năng như vậy bao gồm ThỏMQ o Dịch vụ xếp hàng đơn giản của Amazon (SQS). Cả hai đều được thiết kế để hoạt động như các phương tiện lưu trữ tin nhắn trung gian để tránh khả năng bỏ lỡ cuộc gọi webhook.
Ercole Palmeri
Một ca phẫu thuật tạo hình mắt bằng cách sử dụng trình xem thương mại Apple Vision Pro đã được thực hiện tại Phòng khám đa khoa Catania…
Phát triển kỹ năng vận động tinh thông qua tô màu giúp trẻ chuẩn bị cho những kỹ năng phức tạp hơn như viết. Để tô màu…
Ngành hải quân là một cường quốc kinh tế toàn cầu thực sự, đang hướng tới thị trường 150 tỷ...
Thứ Hai tuần trước, Financial Times đã công bố một thỏa thuận với OpenAI. FT cấp phép cho hoạt động báo chí đẳng cấp thế giới…