Nhảy đến nội dung

Nút http response

Nút http response được sử dụng để gửi phản hồi HTTP cho các yêu cầu được xử lý bởi nút http in. Nó hoàn tất chu trình xử lý yêu cầu và truyền dữ liệu trở lại cho khách hàng.


Cài đặt nút http response

IMG2

1. Tên

Trường để chỉ định tên của nút.
Tên sẽ hiển thị trong không gian làm việc và giúp dễ dàng xác định nút.
Nếu để trống, nút sẽ được gọi là http response.

Ví dụ:

  • Tên nút: Gửi phản hồi JSON

2. Mã trạng thái

Mã trạng thái HTTP của phản hồi, được chỉ định trong biểu mẫu của nút. Mặc định là 200.

Ví dụ:

  • Mã trạng thái: 201

Các trường được xác định bởi thông điệp đầu vào (msg)

Nút http response sử dụng đối tượng msg được truyền vào để tạo thành phản hồi HTTP. Dưới đây là các tham số chính:

  1. msg.payload
    Nội dung của phản hồi. Nó được gửi đến khách hàng trong thân của phản hồi.

    Ví dụ:

    • Để gửi văn bản:
      msg.payload = "Xin chào, Thế giới!";
    • Để phản hồi JSON:
      msg.payload = { status: "ok", value: 42 };

  1. msg.statusCode
    Mã trạng thái HTTP của phản hồi. Nếu trường này không được chỉ định, mặc định sẽ sử dụng 200 OK.

    Ví dụ về mã trạng thái:

    • 200 — Thành công.
    • 201 — Tạo tài nguyên thành công.
    • 400 — Lỗi của khách hàng.
    • 404 — Tài nguyên không tìm thấy.
    • 500 — Lỗi nội bộ của máy chủ.

    Ví dụ:

    msg.statusCode = 404; // Tài nguyên không tìm thấy

  1. msg.headers
    Đối tượng xác định các tiêu đề của phản hồi HTTP. Cho phép chỉ định, ví dụ, loại nội dung, bộ nhớ đệm hoặc tiêu đề tùy chỉnh.

    Ví dụ:

    msg.headers = {
    "Content-Type": "application/json",
    "Cache-Control": "no-cache"
    };

Ví dụ sử dụng

Ví dụ 1: Gửi phản hồi JSON thành công

Luồng:

[http in] ---> [function] ---> [http response]

Mã của nút function:

msg.payload = { success: true, message: "Yêu cầu đã được xử lý thành công" };
msg.statusCode = 200;
msg.headers = { "Content-Type": "application/json" };
return msg;

Kết quả:
Khách hàng sẽ nhận được phản hồi:

HTTP/1.1 200 OK
Content-Type: application/json

{
"success": true,
"message": "Yêu cầu đã được xử lý thành công"
}

Ví dụ 2: Xử lý lỗi

Luồng:

[http in] ---> [function] ---> [http response]

Mã của nút function:

msg.payload = { error: "Tham số yêu cầu không hợp lệ" };
msg.statusCode = 400;
msg.headers = { "Content-Type": "application/json" };
return msg;

Kết quả:
Khách hàng sẽ nhận được phản hồi:

HTTP/1.1 400 Bad Request
Content-Type: application/json

{
"error": "Tham số yêu cầu không hợp lệ"
}

Ví dụ 3: Phản hồi trống với trạng thái tùy chỉnh

Luồng:

[http in] ---> [http response]

Mã trong nút function trước nút http response:

msg.payload = null; // Thân phản hồi trống
msg.statusCode = 204; // Không có nội dung
return msg;

Kết quả:
Khách hàng sẽ nhận được phản hồi:

HTTP/1.1 204 No Content