محلّل أوامر cURL

تعمل في المتصفح الويب

الصق أي أمر cURL (من خيار «Copy as cURL» في أدوات المطوّرين بالمتصفح أو من التوثيق) لفهمه وتحويله إلى كود أو JSON.

الخصوصية: تعمل هذه الأداة بالكامل في متصفحك. لا تغادر بياناتك جهازك أبداً.
جارٍ تحميل الأداة…

كيفية استخدام محلّل أوامر cURL

  1. الصق أمر cURL (يقبل الأوامر متعددة الأسطر).
  2. اختر اللغة الهدف.
  3. أزل الترويسات الخاصة بالمتصفح إن أردت، ثم انسخ الكود المحوَّل أو بنية JSON.

مزايا محلّل أوامر cURL

  • مقسّم رموز (tokenizer) يراعي قواعد غلاف الأوامر (shell): علامات الاقتباس المفردة والمزدوجة وANSI-C، والأحرف المهرَّبة، واستمرار الأسطر بالشرطة المائلة العكسية وbacktick و^
  • يتعرّف على -X و-H و-d/--data-raw/--data-binary/--data-urlencode و--json و-F و-u و--oauth2-bearer و--url و-A و-e و-b و-L و--compressed و-k و-I و-G و--max-time والعلامات المدمجة وصيغة --flag=value
  • يستنتج الطريقة (POST عند وجود متن، وHEAD مع -I)، ويفكّ ترميز بيانات اعتماد Basic، ويستخرج رموز Bearer ومفاتيح API
  • يحوّل إلى ثلاثة عشر هدفاً منها fetch وaxios وPython وJava وC# وGo وPHP وRuby
  • خيار لإزالة الترويسات الخاصة بالمتصفح من تصديرات أدوات المطوّرين
  • عرض JSON منظّم للطلب وقائمة بالعلامات المتجاهَلة

مثال على محلّل أوامر cURL

تحويل تصدير من أدوات المطوّرين إلى fetch

الإدخال:

curl 'https://api.example.com/v1/orders' -H 'authorization: Bearer eyJ…' -H 'content-type: application/json' --data-raw '{"sku":"KB-100"}' --compressed

النتيجة:

const response = await fetch("https://api.example.com/v1/orders", {
  method: "POST",
  headers: {
    "Authorization": "Bearer eyJ…",
    "content-type": "application/json"
  },
  body: JSON.stringify({
    "sku": "KB-100"
  })
});

الأسئلة الشائعة حول محلّل أوامر cURL

ما علامات cURL المفهومة؟

-X/--request و-H/--header و-d/--data/--data-raw/--data-binary/--data-urlencode و--json و-F/--form و-u/--user و--oauth2-bearer و--url و-A و-e و-b و-L و--compressed و-k و-I و-G و-m/--max-time، والعلامات القصيرة المدمجة (-sSL)، وصيغة --flag=value، والاقتباس $'…'، واستمرار الأسطر في bash وPowerShell وcmd. وتُدرج العلامات غير المعروفة بوصفها متجاهَلة.

لماذا تكون الطريقة POST مع أن الأمر لا يحتوي على -X؟

هذه قاعدة curl نفسه: أي خيار -d أو -F يعني ضمناً POST ما لم يُحدَّد -G (إرسال البيانات كاستعلام) أو -X صراحةً. ويعني -I ضمناً HEAD.

ما الذي يزيله خيار «إزالة الترويسات الخاصة بالمتصفح»؟

الترويسات التي تضيفها المتصفحات تلقائياً والتي تعطّل الطلبات البرمجية أو تضخّمها: sec-ch-* وsec-fetch-* وuser-agent وcookie وreferer وorigin وaccept-language وaccept-encoding وpriority وcache-control وpragma. ويُحتفظ دائماً بـ Authorization وContent-Type.

هل يُفكّ ترميز ترويسة Authorization من نوع Basic؟

نعم. يُفكّ ترميز "Authorization: Basic …" من base64 إلى اسم مستخدم وكلمة مرور حتى يتمكن الكود المحوَّل من استخدام خيار المصادقة الأصلي في العميل؛ كما يُتعرَّف على رموز Bearer وترويسات X-API-Key.