انتقل إلى المحتوى الرئيسي

عقدة http response

عقدة http response تُستخدم لإرسال استجابات HTTP على الطلبات التي تمت معالجتها بواسطة عقدة http in. إنها تُنهي دورة معالجة الطلب وتعيد البيانات إلى العميل.


إعدادات عقدة http response

IMG2

1. الاسم

حقل لتحديد اسم العقدة.
الاسم يظهر في مساحة العمل ويساعد في التعرف بسهولة على العقدة.
إذا تُرك فارغًا، ستُسمى العقدة http response.

مثال:

  • اسم العقدة: Send JSON Response

الحقول التي تحددها الرسالة الواردة (msg)

تستخدم عقدة http response كائن msg المرسل إليها كمدخل لتشكيل استجابة HTTP. إليك المعلمات الأساسية:

  1. msg.payload
    محتوى الاستجابة. يتم إرساله إلى العميل في جسم الاستجابة.

    مثال:

    • لإرسال نص:
      msg.payload = "Hello, World!";
    • لاستجابة JSON:
      msg.payload = { status: "ok", value: 42 };

  1. msg.statusCode
    رمز حالة HTTP للاستجابة. إذا لم يتم تحديد هذا الحقل، سيتم استخدام 200 OK بشكل افتراضي.

    أمثلة على رموز الحالة:

    • 200 — نجاح.
    • 201 — تم إنشاء المورد بنجاح.
    • 400 — خطأ في العميل.
    • 404 — المورد غير موجود.
    • 500 — خطأ داخلي في الخادم.

    مثال:

    msg.statusCode = 404; // المورد غير موجود

  1. msg.headers
    كائن يحدد رؤوس استجابة HTTP. يسمح بتحديد، على سبيل المثال، نوع المحتوى، التخزين المؤقت أو الرؤوس المخصصة.

    مثال:

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

أمثلة على الاستخدام

مثال 1: إرسال استجابة JSON ناجحة

التدفق:

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

كود عقدة function:

msg.payload = { success: true, message: "Request processed successfully" };
msg.statusCode = 200;
msg.headers = { "Content-Type": "application/json" };
return msg;

النتيجة:
سيتلقى العميل الاستجابة:

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

{
"success": true,
"message": "Request processed successfully"
}

مثال 2: معالجة الخطأ

التدفق:

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

كود عقدة function:

msg.payload = { error: "Invalid request parameters" };
msg.statusCode = 400;
msg.headers = { "Content-Type": "application/json" };
return msg;

النتيجة:
سيتلقى العميل الاستجابة:

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

{
"error": "Invalid request parameters"
}

مثال 3: استجابة فارغة مع حالة مخصصة

التدفق:

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

الكود في عقدة function قبل عقدة http response:

msg.payload = null; // جسم الاستجابة فارغ
msg.statusCode = 204; // لا يوجد محتوى
return msg;

النتيجة:
سيتلقى العميل الاستجابة:

HTTP/1.1 204 No Content