طلب HTTP - بيانات النموذج - كيفية تحديد نوع المحتوى لحقل معين

وصف المشكلة/الخطأ/السؤال

أحتاج إلى تنفيذ طلب HTTP مع بيانات النموذج، حيث يتم تحديد نوع محتوى لأحد الحقول.

في Postman يبدو الأمر كالتالي

عندما أنشئ مقتطف cUrl من هذا الطلب في Postman - يبدو بهذا الشكل:

curl --location ‘http://someUrl’ \

–form ‘data=“Some sample text about some very important topic”’ \

–form ‘params=“{\“projectId\” : [\“1223\”], \“showMatchingDetails\”:true, \“showMatchingPosition\”: true}”;type=application/json

لاحظ نوع حقل params في النهاية.

لذا عندما أنشئ سير عمل بسيط باستخدام HTTP Request - لا أرى أين يمكنني تحديد نوع محتوى حقل params:

عند تنفيذ سير العمل - حصلت على خطأ بأن Content-Type غير صحيح.

حاولت أيضاً مع Form-Data - نفس الخطأ:

حاولت أيضاً استيراد cURL - نفس الخطأ.

إذاً سؤالي هو - هل هناك طريقة لتحديد نوع محتوى لحقل معين في طلب form-data؟

ما هو رسالة الخطأ (إن وجدت)؟

500 - “{\“voidResponse\”:{\“success\”:false,\“status\”:500,\“message\”:\“Content-Type ‘application/x-www-form-urlencoded’ is not supported\”,\“resultType\”:\“text/plain\”,\“result\”:null}}”

يرجى مشاركة سير عملك

شارك الإخراج الذي أرجعته العقدة الأخيرة

معلومات عن إعداد n8n الخاص بك

  • إصدار n8n: 2.21.7
  • قاعدة البيانات (الافتراضية: SQLite): Postgres
  • إعداد n8n EXECUTIONS_PROCESS (الافتراضي: own, main): own
  • تشغيل n8n عبر (Docker, npm, n8n cloud, desktop app): docker
  • نظام التشغيل: Windows

مرحباً @Daniil_Dukat

هل يمكنك تجربة هذا؟

  1. عقدة الكود: تنشئ خاصية ثنائية تسمى data. والأهم من ذلك، أنها تعيّن mimeType إلى application/json.
  2. عقدة طلب HTTP:
    • نوع محتوى النص: عيّنه إلى multipart-form-data.
    • الحقل 1 (data): حقل نص قياسي يُعين إلى مخرجات JSON من عقدة الكود.
    • الحقل 2 (params): يتم تعيين parameterType إلى formBinaryData وinputDataFieldName إلى data. هذا يخبر n8n بأخذ الكائن الثنائي الذي أنشأناه وإرساله مع نوع MIME المرتبط به (application/json).

بالتأكيد، سأحاول الآن. شكراً

مرحباً @kjooleng - شكراً جزيلاً، لقد نجح! :clinking_beer_mugs:

يسعدني المساعدة…