تخطي إلى المحتوى
SPCX Tools

محول cURL

حول أوامر cURL إلى كود JavaScript fetch أو Python requests فوراً في متصفحك.

تعمل محلياً — ملفاتك لا تغادر جهازك أبداً

جاري تحميل الأداة…

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

  1. 1الصق أمر cURL الخاص بك في مربع الإدخال.
  2. 2حدد لغة الإخراج المطلوبة: JavaScript (fetch) أو Python (requests).
  3. 3سيظهر الكود المحول فوراً في مربع الإخراج أدناه.
  4. 4راجع أي خيارات (flags) غير مدعومة مدرجة أسفل مربع الإخراج للتأكد من دقة طلبك.
  5. 5انقر على نسخ لنسخ الكود المولد إلى الحافظة.

محول cURL سريع وخاص

يواجه المطورون غالباً أوامر cURL في وثائق واجهات برمجة التطبيقات (API)، أو الشروحات التعليمية، أو عند تتبع أخطاء طلبات الشبكة في المتصفح. وتعد ترجمة نصوص سطر الأوامر هذه إلى كود برمجي يدوياً عملية شاقة وعرضة للأخطاء، خاصة عند التعامل مع الترويسات المعقدة وحمولات JSON المتداخلة.

يقوم محول cURL هذا بأتمتة العملية، مما يتيح لك تحويل أمر cURL إلى مقتطفات برمجية جاهزة للاستخدام على الفور. ولأن عملية التحويل تتم بالكامل داخل متصفح الويب الخاص بك، فإن بياناتك الحساسة — مثل رموز المصادقة، ومفاتيح API، وحمولات البيانات الخاصة — لا تغادر جهازك أبداً. يمكنك بأمان لصق الأوامر التي تحتوي على بيانات اعتماد بيئة الإنتاج دون القلق بشأن تسرب البيانات أو سجلات الخادم.

صيغ المخرجات المدعومة

تدعم الأداة حالياً تحويل طلبات سطر الأوامر إلى بيئتين من أكثر بيئات البرمجة استخداماً:

JavaScript (fetch)
يحتاج مطورو JavaScript غالباً إلى تحويل أمثلة واجهات برمجة التطبيقات (API) إلى كود للواجهة الأمامية أو Node.js. عند تحديد خيار JavaScript، تقوم الأداة بتعيين طريقة cURL والترويسات (headers) ومعلمات البيانات مباشرةً إلى استدعاء fetch() قياسي. هذا يجعل تحويل curl إلى javascript عملية تتم بنقرة واحدة. كما تقوم تلقائياً بهيكلة الترويسات في كائن JavaScript وتضمن تنسيق بيانات JSON بشكل صحيح كنص (stringified body)، لتكون جاهزة للاستخدام مباشرة في دالة async/await.

Python (requests)
يعتمد مطورو Python بشكل كبير على مكتبة requests للتعامل مع طلبات HTTP. تقوم الأداة بتحليل صيغة cURL وتوليد كود Python نظيف، مع تحديد الطريقة الصحيحة تلقائياً (مثل requests.get أو requests.post) وهيكلة الترويسات والبيانات كقواميس Python. يضمن لك تحويل curl إلى python requests عدم تفويت أي إعدادات دقيقة للترويسات أو تنسيق رموز المصادقة (authentication tokens) بشكل خاطئ.

حالات الاستخدام الشائعة

دمج واجهات برمجة التطبيقات (APIs) الخارجية
توفر معظم مستندات واجهات برمجة التطبيقات الحديثة (مثل Stripe أو Twilio أو GitHub) أمثلة برمجية تعتمد أساسًا على cURL. ورغم أن هذا مفيد للاختبار السريع عبر الطرفية (terminal)، إلا أنك ستحتاج في النهاية إلى تضمين هذا الطلب في تطبيقك. لصق المثال من المستندات في هذه الأداة يمنحك نقطة انطلاق مثالية لكودك البرمجي.

محاكاة طلبات المتصفح
عند تصحيح أخطاء تطبيق ويب، من الشائع فتح أدوات المطور (developer tools) في متصفحك، والانتقال إلى علامة التبويب Network، والنقر بزر الماوس الأيمن على الطلب الذي فشل، ثم تحديد "Copy as cURL". يمكنك لصق هذا النص كما هو في المحول لإنشاء كود برمجي. يُعد هذا مفيدًا للغاية في كتابة الاختبارات المؤتمتة، أو استخراج البيانات، أو عزل الأخطاء البرمجية خارج بيئة المتصفح المعقدة.

بناء النماذج الأولية والاختبار
يفضل العديد من المطورين بناء واختبار طلبات HTTP الخاصة بهم في الطرفية أولاً. بمجرد أن يُرجع أمر curl استجابة 200 OK المتوقعة، يمكنك إحضاره إلى هنا لإنشاء كود fetch أو requests المكافئ على الفور، مما يضمن أن تطبيقك يرسل نفس البيانات تمامًا كما في اختبارك الناجح على الطرفية.

كيف يعمل التحويل

عند لصق النص المدخل، تقوم الأداة بتحليله لاستخراج المكونات الأساسية لطلب HTTP:

  • الرابط: نقطة النهاية (endpoint) المقصودة للطلب.
  • الطريقة: تُستخرج من العلامة -X أو --request (مثل GET، POST، PUT، DELETE). إذا لم يتم تحديدها، تكون القيمة الافتراضية GET، أو POST في حال إرفاق بيانات.
  • الترويسات: تُستخرج من كل علامة -H أو --header. ويتم تجميعها في قاموس أو كائن.
  • البيانات/الحمولة: تُستخرج من العلامات -d أو --data أو --data-raw.

على الرغم من أن الأداة تتعامل مع الغالبية العظمى من طلبات API القياسية، إلا أن cURL تُعد أداة ضخمة تحتوي على مئات العلامات المعقدة (مثل --compressed أو --resolve أو مسارات محددة لشهادات SSL). إذا واجه المحلل علامات لا تتوافق بسلاسة مع إعدادات fetch أو requests القياسية، فسيركز على طلب HTTP الأساسي ويتجاهل تلك العلامات.

تُعرض أي وسيطات تم تجاهلها بوضوح أسفل الكود المُولد. يضمن لك ذلك معرفة ما تم استبعاده بالضبط، مما يتيح لك ضبط إعدادات البروكسي أو SSL المتقدمة يدويًا في كود تطبيقك إذا كانت ضرورية.

أدوات مفيدة ذات صلة

التعامل مع واجهات برمجة التطبيقات (APIs) يتطلب غالباً أكثر من مجرد كتابة الطلب. بمجرد إرسال طلبك بنجاح باستخدام الكود المُنشأ، قد تحتاج إلى تنسيق البيانات الناتجة باستخدام منسق JSON لجعلها سهلة القراءة. وإذا فشل طلبك واحتجت إلى فهم رمز الاستجابة الذي تلقيته، يمكنك مراجعة دليل رموز حالة HTTP. أخيرًا، إذا كنت بحاجة إلى تفكيك أو تعديل رابط URL لنقطة النهاية نفسه قبل التحويل، يمكن أن تساعدك أداة محلل الروابط في استخراج وتعديل معلمات استعلام محددة.

الأسئلة الشائعة

ما هو محول cURL؟
يقوم محول cURL بترجمة طلبات curl من سطر الأوامر إلى كود برمجي مكافئ للغات مثل JavaScript أو Python. يوفر هذا الوقت عند الحاجة إلى دمج طلب API قمت باختباره في موجه الأوامر (terminal) داخل الكود المصدري لتطبيقك.
ما هي لغات البرمجة المدعومة؟
حاليًا، تقوم هذه الأداة بتحويل أوامر cURL إلى JavaScript باستخدام واجهة fetch API الأصلية، وإلى Python باستخدام مكتبة requests الشهيرة.
هل يتم إرسال مفتاح API أو رمز bearer الخاص بي إلى أي خادم؟
لا. تتم عملية التحويل بالكامل محليًا داخل متصفحك باستخدام JavaScript. لا يتم أبدًا رفع أو تخزين الترويسات (headers) أو الرموز (tokens) أو بيانات الحمولة (payload)، مما يحافظ على أمان بيانات اعتمادك.
ماذا يحدث إذا كان أمر cURL يحتوي على معاملات (flags) غير مدعومة؟
إذا واجه المحلل (parser) معاملات لا يدعمها للغة الهدف (مثل شهادات SSL معينة أو إعدادات البروكسي)، فسيتجاهلها ويقوم بإنشاء الطلب الأساسي. يتم إدراج أي معاملات تم تجاهلها أسفل مربع المخرجات حتى تتمكن من تعديل الكود يدويًا إذا لزم الأمر.
هل يمكنني تحويل أمر cURL إلى JavaScript؟
نعم، اختيار JavaScript يقوم بترجمة أمر cURL الخاص بك إلى طلب fetch قياسي، بما في ذلك الترويسات (headers) والطرق (methods) وحمولات JSON، ليكون جاهزًا للاستخدام في بيئات Node.js أو المتصفح.
لماذا يظهر لي خطأ "Not a valid cURL command"؟
تتوقع الأداة أن يبدأ الإدخال بكلمة "curl". إذا قمت بلصق رابط فقط أو أمر مختلف، فسيتم رفضه. تأكد من أن إدخالك عبارة عن أمر cURL كامل وصحيح.