Nhảy tới nội dung

Node http response

Node 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 node http in. Nó hoàn thành chu trình xử lý yêu cầu và gửi dữ liệu trở lại cho khách hàng.


Cài đặt cho node http response

IMG2

1. Tên

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

Ví dụ:

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

Các trường được xác định bởi tin nhắn đến (msg)

Node http response sử dụng đối tượng msg được truyền vào nó như đầu vào để hình 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!";
    • Đối vớ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, 200 OK sẽ được sử dụng theo mặc định.

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

    • 200 — Thành công.
    • 201 — Tài nguyên đã được tạo 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 máy chủ nội bộ.

    Ví dụ:

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

  1. msg.headers
    Một đối tượng định nghĩa các tiêu đề phản hồi HTTP. Nó cho phép chỉ định, ví dụ, loại nội dung, bộ nhớ đệm, hoặc cá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ã cho node 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ã cho node 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 node function trước node 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