كيفية استخدام مولّد طلبات REST
- حدّد الطريقة وعنوان URL، وأضف الترويسات ومتناً اختيارياً.
- اختر نوع المصادقة وأدخل بيانات الاعتماد.
- اختر لغة إضافية من القائمة المنسدلة؛ وانسخ أي مقتطف بنقرة واحدة.
مزايا مولّد طلبات REST
- أربعة عشر هدفاً: cURL لكل من bash وPowerShell وcmd، وfetch، وaxios، وNode https، وPython requests وhttpx، وJava HttpClient، وC# HttpClient، وGo net/http، وPHP cURL، وRuby Net::HTTP، وHTTP الخام
- تُولَّد cURL وfetch وaxios وPython دائماً؛ وأي لغة أخرى من القائمة المنسدلة
- مصادقة Bearer وBasic ومفتاح API (في ترويسة أو استعلام)
- تتحوّل متون JSON إلى بنى أصلية حيثما تدعم اللغة ذلك؛ وتُهرَّب المتون الأخرى تهريباً صحيحاً
- كشف تلقائي لـ Content-Type عند عدم تحديده (JSON أو نماذج أو XML أو نص)
- تحذيرات عند وجود متن مع GET أو JSON غير صالح أو غياب بيانات الاعتماد
مثال على مولّد طلبات REST
طلب POST مع JSON ورمز bearer ← Python
الإدخال:
POST https://api.example.com/v1/users · Content-Type: application/json · Bearer sk_test_… · Body {"name":"Layla"}النتيجة:
import requests
url = "https://api.example.com/v1/users"
headers = {
"Authorization": "Bearer sk_test_…",
"Accept": "application/json",
}
payload = {
"name": "Layla",
}
response = requests.post(url, headers=headers, json=payload)
response.raise_for_status()
print(response.status_code, response.json())الأسئلة الشائعة حول مولّد طلبات REST
ما اللغات والعملاء المدعومون؟
cURL (بتهريب bash وPowerShell وcmd)، وJavaScript fetch، وaxios، وNode.js https، وPython requests وhttpx، وJava 11+ HttpClient، وC# HttpClient، وGo net/http، وPHP cURL، وRuby Net::HTTP، ورسالة HTTP/1.1 خام. تُعرض الأربعة الأكثر شيوعاً دائماً؛ واختر أي لغة أخرى من القائمة المنسدلة.
كيف يُعالج المتن في كل لغة؟
عندما يكون Content-Type هو JSON ويمكن تحليل المتن، تستخدم المقتطفات البنى الأصلية (JSON.stringify في fetch، وdata في axios، وjson=… في Python). وإلا يُرسل المتن كسلسلة نصية خام مع تهريب صحيح لكل لغة.
أين تُوضع إعدادات المصادقة في الكود الناتج؟
تتحوّل Bearer وBasic إلى ترويسة Authorization؛ وتتحوّل مفاتيح API إلى ترويسة أو معامل استعلام حسب اختيارك. تستخدم C# الصنف AuthenticationHeaderValue، وتمرّر Python الترويسات صراحةً بحيث تكون المقتطفات جاهزة للنسخ واللصق.
هل يُرسل أي شيء إلى خادم؟
لا. توليد الكود معالجة نصية تجري بالكامل على جانب العميل؛ وتبقى رموزك في المتصفح. لا تودع (commit) الملفات المولَّدة التي تحتوي على أسرار حقيقية.
ملاحظات تقنية
تستهلك جميع المولّدات الطلب المطبَّع نفسه (الطريقة وعنوان URL والترويسات والمتن والمصادقة والخيارات) بحيث تكون المقتطفات متسقة. ولكل لغة أسلوبها الخاص في تهريب السلاسل النصية (بأسلوب JSON في JS وJava وGo، والصيغة الحرفية @"…" في C#، وعلامات الاقتباس المفردة في PHP وRuby، والاقتباس الثلاثي للنصوص متعددة الأسطر في Python).