Hướng Dẫn Webhooks N8N: Từ Cơ Bản Đến Nâng Cao (Tối Ưu SEO)
Hướng Dẫn Chi Tiết: Webhooks trong N8N (Từ Cơ Bản Đến Nâng Cao)

Giới thiệu về Webhooks
Webhooks trong N8N có sức mạnh vô cùng lớn, nhưng nhiều người vẫn chưa hiểu rõ cách
chúng hoạt động. Bài viết này sẽ cung cấp cho bạn mọi kiến thức cần thiết để làm chủ
webhooks trong N8N. Webhooks thực chất chỉ là các
thông điệp được định dạng một cách đặc biệt.
Webhooks là gì?
Hãy tưởng tượng bạn có hai ứng dụng, A và B. Webhook chỉ đơn giản là một tin nhắn từ
ứng dụng A gửi đến ứng dụng B, hoặc ngược lại. Ví dụ, khi bạn gặp bạn gái cũ của bạn
ở cửa hàng tạp hóa và bạn nói với bạn của mình: “Tôi vừa thấy Stacy ở cửa hàng!”, đó
chính là một webhook. Chúng ta chỉ đang định dạng thông tin này theo một cách cụ thể.
Ví dụ Thực Tế
Để làm cho mọi thứ trở nên thiết thực hơn, hãy xem xét một ví dụ kinh doanh. Giả sử
ứng dụng A là một ứng dụng email (Gmail, Outlook, v.v.). Khi bạn nhận
được một email mới, bạn có thể gửi một webhook đến ứng dụng B, chẳng hạn như hệ thống
CRM của bạn. Webhook này sẽ thêm một bản ghi mới vào CRM của bạn,
chứa địa chỉ email, tên, họ, v.v. của người gửi.
Webhooks ngày càng trở nên phổ biến trong những năm 2020 vì chúng ta đang có xu hướng
tích hợp mọi thứ lại với nhau. Mục tiêu cốt lõi của các công cụ no-code và low-code
là kết nối các nền tảng khác nhau, và webhooks đóng vai trò quan trọng trong việc đạt
được điều này.
Webhooks trong N8N
N8N cung cấp hai cách đơn giản để sử dụng webhooks:
- Bắt Webhook: Nhận thông điệp đến bằng cách sử dụng nút Webhook.
- Phản Hồi Webhook: Gửi dữ liệu từ N8N trở lại nguồn đã gửi webhook.
Hai chức năng này là nền tảng của hoạt động trên internet ngày nay. N8N cho phép bạn
nhanh chóng và dễ dàng tích hợp vào bất kỳ ứng dụng nào, ngay cả khi ứng dụng đó
không có tích hợp sẵn.

Tại Sao Sử Dụng Webhooks Thay Vì Các Tích Hợp Có Sẵn?
Mặc dù N8N cung cấp hàng trăm hành động tích hợp sẵn, nhưng vẫn có vô số ứng dụng
ngoài kia không có trong danh sách đó. Webhooks cho phép bạn tạo các
tích hợp tùy chỉnh và kết nối với bất kỳ ứng dụng nào hỗ trợ chúng.
Cách Webhooks Hoạt Động Trong N8N
Trong N8N, chúng ta sử dụng nút Webhook. Nút này tạo ra một URL tùy chỉnh. Nếu bạn
sử dụng N8N Cloud, URL của bạn sẽ có dạng
nix.r.appcloud.com
. Nếu bạn tự lưu trữ N8N, URL của bạn có thể khác.
Bằng cách tạo nút Webhook, bạn đang tạo ra một “khối Lego” mà bạn có thể sử dụng để
kết nối với các khối Lego khác và xây dựng quy trình làm việc của mình.
Các Trường Cấu Hình Quan Trọng
- URL Kiểm Tra vs. URL Sản Xuất: URL kiểm tra được sử dụng trước khi quy
trình làm việc của bạn hoạt động trên môi trường sản xuất. URL này luôn chứa
webhook-test
. URL sản xuất chỉ chứawebhook
. - Đường Dẫn (Path): Bạn có thể tùy chỉnh đường dẫn URL của mình. Ví dụ:
/my-super-cool-webhook-listener
. Đường dẫn này vẫn giữ nguyên bất kể bạn
sử dụng URL kiểm tra hay URL sản xuất. - Phương Thức HTTP (HTTP Method): Xác định loại yêu cầu HTTP mà webhook sẽ
phản hồi. Các phương thức phổ biến nhất là GET và POST. Bạn có thể chỉ định rằng
webhook chỉ phản hồi khi nhận được yêu cầu với một phương thức cụ thể. - Xác Thực (Authentication): Mặc định, N8N yêu cầu xác thực cho webhooks.
Tuy nhiên, bạn có thể tắt xác thực nếu muốn. Xác thực là một cách để đảm bảo rằng
chỉ những người có “mật khẩu” bí mật mới có thể kích hoạt webhook của bạn. Có nhiều
cách khác nhau để xác thực, chẳng hạn như Basic Auth, Header Auth, và JSON Web Token
(JWT) Auth. - Cách Phản Hồi (Respond): Có ba cách để phản hồi webhook:
- Ngay Lập Tức (Immediately): Phản hồi ngay khi nhận được yêu cầu.
- Khi Nút Cuối Cùng Kết Thúc (When the last node finishes): Đợi cho đến
khi tất cả các nút trong quy trình làm việc hoàn thành, sau đó phản hồi. - Sử Dụng Nút “Respond to Webhook” (Using Respond to Webhook node): Sử
dụng nút này để tùy chỉnh dữ liệu được gửi trả lại.
- Tùy Chọn (Options): Một số tùy chọn khác, chẳng hạn như “Ignore Bots”
(bỏ qua bot). Bạn cũng có thể kiểm soát mã phản hồi (Response Code) mà máy chủ trả
về.
Kích Hoạt Webhook
Bạn có thể kích hoạt webhook bằng cách truy cập URL của nó trong trình duyệt. Đây là
cách đơn giản nhất. Khi bạn truy cập URL trong trình duyệt, bạn đang gửi một yêu cầu
GET.
Khi bạn kích hoạt webhook, bạn sẽ nhận được một thông báo JSON cho biết “workflow was
started” (quy trình làm việc đã bắt đầu). Trong tab N8N, bạn sẽ thấy đầu ra, bao gồm
các đối tượng như headers (tiêu đề), params (tham số), query (truy vấn) và body (nội
dung).
Các Đối Tượng Đầu Ra Quan Trọng
- Headers: Chứa thông tin về trình duyệt của bạn, chẳng hạn như loại máy
tính, tác nhân người dùng, trình duyệt, các loại dữ liệu được chấp nhận, v.v. - Params: Chứa các tham số được truyền trong URL.
- Query: Chứa các tham số truy vấn được truyền trong URL (sau dấu hỏi
?
). - Body: Chứa nội dung của yêu cầu (thường được sử dụng với các yêu cầu
POST).
Truyền Dữ Liệu Đến Webhook
Có nhiều cách để truyền dữ liệu đến webhook:
Sử Dụng Tham Số Truy Vấn (Query Parameters)
Bạn có thể thêm các tham số truy vấn vào cuối URL bằng cách sử dụng dấu hỏi
?
, sau đó là tên biến, dấu bằng =
và giá trị. Ví dụ:
https://your-webhook-url?firstName=Nick
.
Sử Dụng Đường Dẫn Động (Dynamic Paths)
Bạn có thể định nghĩa các đường dẫn động trong URL của mình. Ví dụ:
https://your-webhook-url/firstName/lastName
. Trong trường hợp này, bạn cần
cấu hình đường dẫn của webhook để nhận các tham số firstName
và
lastName
.
Mặc dù cả hai phương pháp này về cơ bản là tương đương, nhưng việc sử dụng tham số
truy vấn thường đơn giản hơn.
Sử Dụng Terminal với Curl
Bạn có thể sử dụng lệnh curl
trong terminal để gửi yêu cầu GET hoặc POST
đến webhook của bạn. Ví dụ:
curl "https://your-webhook-url?firstName=Nick&lastName=Sur"
.
Sử Dụng N8N để Gửi Yêu Cầu
Bạn có thể sử dụng nút HTTP Request trong N8N để gửi yêu cầu đến một webhook khác.
Điều này cho phép bạn tạo các kiến trúc phức tạp, trong đó các quy trình làm việc
kết nối với nhau.
Một trong những ứng dụng thú vị của webhooks trong N8N là bạn có thể sử dụng chúng để
lắng nghe các quy trình làm việc khác. Bạn có thể tạo một kiến trúc đẹp mắt trong
N8N, kết nối các quy trình làm việc lại với nhau. Ví dụ, bạn có thể gửi nhiều yêu
cầu đến các webhooks khác nhau song song, và sau đó nhận lại kết quả.
Phản Hồi Dữ Liệu Từ Webhook
Cho đến nay, chúng ta chỉ gửi dữ liệu một chiều đến webhook. Nhưng nếu chúng ta muốn
gửi dữ liệu trở lại? Điều này cho phép chúng ta xây dựng các API (Application
Programming Interfaces), phục vụ HTML tĩnh, và tạo ra các máy chủ nhỏ của riêng
mình.
Sử Dụng Nút “Respond to Webhook”
Để gửi dữ liệu trở lại, bạn cần kết nối nút “Respond to Webhook” vào quy trình làm
việc của mình. Trong nút Webhook, bạn cần chọn “Respond to Webhook node” trong phần
“Respond”.
Có nhiều tùy chọn khác nhau để phản hồi:
- All Incoming Items: Trả về tất cả dữ liệu mà bạn đã gửi đến webhook.
Đây là một cách dễ dàng để kiểm tra webhook của bạn. - Binary File: Trả về dữ liệu nhị phân (ví dụ: một tập tin).
- First Incoming Item: Chỉ trả về mục đầu tiên nếu bạn gửi nhiều mục.
- JSON: Cho phép bạn định nghĩa JSON tùy chỉnh để gửi trả lại.
- JWT: Trả về một JSON Web Token (JWT).
- No Data: Không trả về dữ liệu nào.
- Redirect: Chuyển hướng người dùng đến một URL khác.
- Text: Trả về văn bản thuần túy.
Ví dụ: Tạo API Với Open AI
Hãy tạo một API nhỏ sử dụng Open AI để tạo một câu chuyện ngắn về một người dựa trên
tên của họ. Chúng ta sẽ sử dụng nút “Respond to Webhook” để trả về câu chuyện.
- Thêm nút Open AI vào quy trình làm việc của bạn.
- Kết nối nút Webhook với nút Open AI.
- Trong nút Open AI, cấu hình để nó tạo một câu chuyện ngắn dựa trên tên được gửi
đến webhook. - Trong nút “Respond to Webhook”, chọn “JSON” và định nghĩa một đối tượng JSON chứa
câu chuyện được tạo bởi Open AI.
Bây giờ, khi bạn gửi một yêu cầu đến webhook với tên, bạn sẽ nhận được một câu chuyện
ngắn về người đó.
Ví dụ: Phục Vụ HTML Tùy Chỉnh
Một trong những cách thú vị nhất để sử dụng nút “Respond to Webhook” là trả về HTML
tùy chỉnh. Điều này cho phép bạn tạo các trang web động và tương tác.

- Trong nút “Respond to Webhook”, chọn “Text” và nhập HTML của trang web bạn muốn phục
vụ. - Bạn có thể sử dụng các biểu thức để chèn dữ liệu động vào HTML của mình.
Ví dụ, bạn có thể tạo một trang web chào đón người dùng bằng tên của họ, dựa trên tên
được gửi đến webhook.
Khả năng phục vụ HTML tùy chỉnh mở ra rất nhiều ứng dụng, chẳng hạn như tạo các trang
web dành riêng cho khách hàng, hiển thị dữ liệu từ CRM, v.v.
Xác Thực Webhooks
Bạn có thể thêm xác thực vào webhooks của mình để đảm bảo rằng chỉ những người được
phép mới có thể kích hoạt chúng. N8N hỗ trợ nhiều phương pháp xác thực khác nhau:
- Basic Auth: Yêu cầu người dùng nhập tên người dùng và mật khẩu.
- Header Auth: Yêu cầu người dùng gửi một tiêu đề HTTP với một khóa API.
- JWT Auth: Sử dụng JSON Web Tokens (JWT) để xác thực.
Nếu bạn sử dụng Basic Auth hoặc Header Auth, bạn cần cung cấp tên người dùng và mật
khẩu hoặc khóa API khi gửi yêu cầu đến webhook.
Ví dụ, nếu bạn sử dụng Header Auth với tiêu đề API_KEY
, bạn cần gửi một
yêu cầu HTTP với tiêu đề sau:
API_KEY: your_secret_password
.

Sử Dụng Webhooks Với Localhost
Nếu bạn đang tự lưu trữ N8N bằng Docker, bạn có thể cần cấu hình một reverse proxy
(ví dụ: Nginx) để có thể truy cập webhooks của bạn từ bên ngoài.
Bạn cũng cần đảm bảo rằng biến môi trường WEBHOOK_URL
được đặt đúng cách.
Biến này phải trỏ đến URL gốc của phiên bản N8N của bạn.
Nếu bạn đang sử dụng Render, bạn có thể tìm thấy URL gốc của phiên bản Render của
mình ở đầu trang. Bạn cần sao chép URL này và dán nó vào biến môi trường
WEBHOOK_URL
.
Kết Luận
Webhooks là một công cụ mạnh mẽ cho phép bạn kết nối các ứng dụng khác nhau và tự động
hóa các quy trình làm việc. Với N8N, bạn có thể dễ dàng tạo và sử dụng webhooks để
tích hợp với bất kỳ ứng dụng nào hỗ trợ chúng.
Hy vọng rằng hướng dẫn này đã giúp bạn hiểu rõ hơn về cách webhooks hoạt động trong
N8N. Nếu bạn có bất kỳ câu hỏi nào, vui lòng để lại bình luận bên dưới.
Bạn có thấy hữu ích không? Hãy cho chúng tôi +1 nhé
Đăng ký nhận bản tin từ Website TXL
Tìm kiếm tức thì các thông tin tại website: tranxuanloc.com
Mẹo tìm kiếm: "Từ khóa cần tìm kiếm" site:tranxuanloc.com để tìm được kết quả chính xác trên công cụ tìm kiếm của googleGỢI Ý: Khóa học sales OTAOTA là gìđăng ký kênh OTAEmail theo tên miềnCRMWP Content Crawlerchuyển VPSACF
