Playground

يتيح لك Playground (الشريط الجانبي > Playground) تشغيل طلبات API حية باستخدام مفتاحك الحقيقي دون كتابة أي كود. إنها أسرع طريقة لتجربة موقع هدف جديد، أو تصحيح استجابة معقدة، أو مقارنة Auto و Single و Proxy و Browser جنبا إلى جنب.

افتحه في foura.ai/dashboard#playground.

ما يفعله

نموذج واحد. أربعة محركات. حركة مرور حقيقية.

  • Auto: جلب ذكي. تقوم بتمرير URL بالإضافة إلى قاعدة validate ويختار FourA المسار الأرخص الذي يعمل.
  • Single: جلب HTTP مباشر بخصائص شبكة واقعية تشبه المتصفح
  • Proxy: جلب بروكسي دوار مدار، يمكن تحديده اختياريا إلى بلدان مرئية للهدف
  • Browser: يفتح URL في مثيل متصفح Chrome للمواقع التي يتم عرضها بواسطة JS

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

اختيار مفتاح

تُظهر القائمة المنسدلة لمفتاح API كل مفتاح نشط ضمن نطاقك: المفاتيح الشخصية، ومفاتيح المؤسسة التي تديرها، والمفاتيح المشتركة بين الفريق التي يمكنك الوصول إليها. اختر المفتاح الذي تريد أن يتم خصم الطلب منه. إذا لم يكن لديك أي مفاتيح نشطة حتى الآن، يربطك توجيه مضمن بصفحة مفاتيح API لإنشاء واحد.

اختيار وضع

يبدّل صف Mode العلوي بين Auto والمحركات اليدوية. عند تحديد Auto، يتبدّل النموذج إلى واجهة Auto الدنيا (URL بالإضافة إلى validate وبضعة مقابض). عندما تقوم بإيقاف تشغيل Auto، تظهر ثلاثة أزرار: Single و Proxy و Browser. يؤدي تبديل الأزرار إلى تبديل الحقول المرئية والمحرك الذي يضربه الطلب. يتم الاحتفاظ بالتحديد الحالي عند إعادة تحميل الصفحة.

الوضع متى تستخدمه
Auto هدف جديد أو موقع مختلط الحماية. يختار Auto المسار الأرخص ويتذكر ما ينجح.
Single جلب HTTP سريع. أفضل خيار أول لمضيف معروف.
Proxy نفس الجلب مع تدوير بروكسي تلقائي. قم بتعيين exitCountries عندما تحتاج إلى بلد مرئي للهدف.
Browser يقوم بتحميل الصفحة في مثيل متصفح Chrome. استخدمه عندما تظهر البيانات فقط بعد تشغيل JavaScript.

بناء الطلب

صف URL

يحتوي الصف العلوي على طريقة HTTP (GET, POST, PUT, PATCH, DELETE, HEAD, OPTIONS)، والهدف URL، وزر Send. تحترم Single و Proxy و Auto كل طريقة. يتجاهل Browser الطريقة (يُصدر Chrome دائمًا GET للتنقل) والمحتوى.

علامات تبويب الطلب

أسفل صف URL، تتيح لك خمس علامات تبويب ملء كل شيء آخر:

علامة التبويب ما تتحكم فيه
UI حقول النموذج للمهلات، وإعادة التوجيه، والعلامات، والبروكسي، والخيارات الخاصة بالمتصفح، وقواعد التحقق
Body محتوى حر لطلبات POST / PUT / PATCH
Headers ترويسات طلب مخصصة كأزواج مفتاح وقيمة
Cookies ملفات تعريف الارتباط للإرسال مع الطلب
Raw حمولة JSON الدقيقة التي سيتم إرسالها، قابلة للتعديل مباشرة

أي تغيير تجريه في UI أو Body أو Headers أو Cookies ينعكس في Raw. تعديل Raw يعمل أيضًا، مع تحديث علامات التبويب الأخرى للمطابقة. تظهر نقطة حمراء على أي علامة تبويب أو قسم قابل للطي يحتوي على قيمة تختلف عن الإعدادات الافتراضية للمحرك، بحيث يمكنك أن تلاحظ بلمحة ما قمت بتخصيصه.

أقسام جزء UI (UI Pane Sections)

تقوم علامة التبويب UI بتجميع الإعدادات في أقسام قابلة للطي. الحقول الفارغة تتراجع إلى المخطط الافتراضي للمحرك. الأقسام التي لا تنطبق على الوضع الحالي مخفية.

  • Timeouts: timeout_ms, connect_timeout_ms, accept_timeout_ms, server_response_timeout_ms, dns_cache_timeout_sec. يعرض Auto فقط timeout_ms (الميزانية الإجمالية).
  • Redirects: التبديل وتعيين followRedirects (0-20). Single و Proxy و Auto. يتبع Browser عمليات إعادة التوجيه بمفرده.
  • Flags: unblocker لكل من Single و Proxy و Browser (يؤدي unblocker في Browser إلى تشغيل auto defense solver); tryJsonData و returnBuffer لكل من Single و Proxy. يعرض Auto forceProxy و returnSession بدلاً من ذلك.
  • Proxy: اختر معرف proxy محددًا لكل من Single أو Browser، أو قم بتعيين maxTries، وهي مهلة Proxy الخارجية، exitCountries، و ignoreProxies لمحرك Proxy. يعرض Auto أيضًا ignoreProxies.
  • Browser profile: ثلاث قوائم منسدلة متتالية، os و browser و version، تسرد ما يمكن لـ FourA تقديمه فعليًا. تظهر في وضع Single و Proxy. اتركها فارغة لأحدث إصدار من Chrome. كل تحديد يضيق الخيارين الآخرين، لذا لا يظهر أبدًا مزيج لا يؤدي إلى شيء. يحتاج القسم إلى تشغيل Web Unblocker: عند إيقاف تشغيله، لا يتم إرسال ترويسات متصفح، ولن ينطبق الملف الشخصي إلا جزئيًا، ويرفض الـ API الطلب بدلاً من ذلك.
  • Browser: خيارات متصفح فقط مثل checkStatus و checkText.
  • Validate: validate.status (أكواد الحالة), validate.headers (قواعد مفتاح-قيمة للترويسة), و validate.data (السلاسل الفرعية للقبول / الفشل في النص, |-بدائل مفصولة) قواعد القبول / الفشل. متاح لكل وضع، بما في ذلك Auto.

تحديد نطاق بلد الخروج (وضع Proxy)

يقبل حقل exitCountries في Proxy قائمة مفصولة بفواصل من رموز البلدان المكونة من حرفين المرئية للهدف (CZ, GB). يتم تقليم القيم، وتحويلها إلى أحرف كبيرة، وإزالة التكرارات عند الإرسال. التحديد عبارة عن قائمة سماح صارمة: يتم استبعاد أجهزة proxy ذات مخارج غير معروفة ولا يتراجع الطلب أبدًا إلى بلد آخر. إذا لم يكن للمجمع الحالي أي تطابق، ترجع الاستجابة code: "no_eligible_proxy" مع إرجاع النطاق المطلوب في details.exitCountries. حافظ على النطاق وحاول مرة أخرى لاحقًا.

عندما تنجح مكالمة proxy تحت تحديد النطاق، يظهر شريط الاستجابة exit <CODE> بجوار معرف proxy حتى تتمكن من التحقق من أن البلد المخدوم يطابق ما طلبته.

إعادة تعيين شريط الأدوات (Toolbar Reset)

الزر Reset في شريط الأدوات (بجوار History وSaved) يعيد مساحة اللعب إلى حالة نظيفة. نظرا لأنه مدمر، فإنه يفتح مربع حوار تأكيد يسرد بالضبط ما سيتم مسحه: جميع نماذج المنتجات الثلاثة (Single، Proxy، Browser)، وأي ملفات تعريف ارتباط (cookies) محفوظة في الجرة (jar)، وأي وكلاء (proxies) محمولين، والاستجابة (response) الحالية. يتم الاحتفاظ بالإعدادات المسبقة المحفوظة ومفتاح API المحدد. انقر على Reset everything للتأكيد؛ أي شيء آخر يلغي العملية.

الإرسال والإلغاء

انقر على Send لإطلاق الطلب. يتحول العمود الأيمن إلى حالة تحميل مع مؤشر دوران وزر Cancel أثناء قيام المكالمة. انقر على Cancel (أو اضغط على الزر مرة أخرى على الجوال) للإلغاء. يستعيد الطلب الملغى العنصر النائب الخامل مع رسالة "Request canceled." بدلا من عرض خطأ.

تتحول بطاقة الاستجابة إلى النتيجة في اللحظة التي يكتمل فيها الطلب (أو يفشل). يمكن أن تستغرق عمليات التشغيل التلقائية (Auto) وقتا أطول من المحركات اليدوية لأن السلم قد يتسلق عدة درجات على هدف بارد.

قراءة الاستجابة

يعكس عمود الاستجابة تخطيط الطلب بعلامات التبويب الخاصة به:

علامة التبويب ماذا تعرض
Body النص الذي تم تحليله. يبدل بين طرق عرض JSON، و HTML، و Text بناء على ما تم إرجاعه.
Headers ترويسات الاستجابة، ترويسة واحدة في كل سطر.
Cookies ملفات تعريف الارتباط (cookies) التي يرجعها الهدف، في كل من طرق العرض المحللة (مجمعة حسب المضيف) والخام (نص Set-Cookie). تعرض طريقة العرض المحللة شارة HO على ملفات تعريف الارتباط الخاصة بالمضيف فقط؛ لا يتم وضع علامة على ملفات تعريف ارتباط النطاق (domain cookies).
Raw غلاف JSON الكامل الذي يرجعه API.

يعرض شريط التعريف أعلى علامات التبويب حالة HTTP للتدفق الصاعد، وإجمالي الوقت، ومعرف الوكيل الذي تعامل مع المكالمة، و (لمكالمة Proxy ذات النطاق) exit <CODE> المكون من حرفين. بالنسبة لعمليات تشغيل Auto، يعرض الشريط أيضا درجة السلم التي قدمت الاستجابة، وعدد المحاولات الفرعية التي تم إجراؤها، والأرصدة المنفقة.

قيم الحمل بين عمليات التشغيل

بعد أي عملية تشغيل أرجعت بيانات جلسة قابلة لإعادة الاستخدام، يوضح عنصر تحكم Carry صغير على شريط أدوات الاستجابة ما هو متاح:

  • عمليات تشغيل Auto تقدم ثلاثة session كاملة (proxy، cookies، userAgent).
  • عمليات تشغيل Browser تقدم userAgent للاستجابة، بالإضافة إلى معرف الوكيل إذا تم استخدام واحد.
  • عمليات تشغيل Proxy تقدم معرف الوكيل الذي تم إرجاعه.

انقر على Carry واختر مكان تطبيق كل قيمة بنقرة واحدة: يصبح userAgent ترويسة User-Agent في Single أو Proxy، ويسقط معرف الوكيل في حقل proxy في Single أو Browser. الحقول التي تتلقى قيمة محمولة تعرض النقطة الحمراء "المعدلة" بحيث يمكنك رؤية ما تغير.

التوسيع إلى ملء الشاشة

يرفع رمز التوسيع الموجود على شريط أدوات الاستجابة بطاقة الاستجابة خارج التخطيط المقسم وفي تراكب بملء الشاشة. استخدمه لأشجار JSON العميقة، أو مقالب Set-Cookie الطويلة، أو نصوص HTML العريضة حيث يصبح العمود بنصف العرض ضيقا. تتوقف الصفحة نفسها عن التمرير أثناء فتح التراكب. انقر فوق الرمز مرة أخرى (أو اضغط على Escape) للطي.

أداة إعادة إنتاج cURL

أسفل الـ response، يعرض قسم curl ما يعادل سطر الأوامر تماما للـ request الذي أنشأته للتو. يمكنك نسخه لإعادة تشغيل الـ request من موجه الأوامر، أو مشاركته مع زميل، أو لصقه في تقرير مشكلة.

بالنسبة للمفاتيح القابلة للكشف، يقوم زر Reveal key بجوار المقتطف بإدراج المفتاح الحقيقي كنص عادي مباشرة في الـ curl لتتمكن من نسخه وتشغيله كما هو. انقر مرة أخرى لإخفائه. تحتفظ المفاتيح القديمة (التي تم إنشاؤها قبل إطلاق ميزة الكشف) بعنصر نائب PASTE_PLAINTEXT_FOR_<key-name>؛ أعد إنشاء المفتاح من صفحة API Keys لجعله قابلا للكشف.

يتم تسجيل عملية الكشف في سجل التدقيق على الخادم في كل مرة، ويبقى المفتاح العادي في الذاكرة فقط لجلسة الصفحة الحالية.

حفظ الإعدادات المسبقة

إذا كنت تعيد تكوين نفس الهدف بشكل متكرر، فقم بحفظه. انقر على Save في صف علامات تبويب الـ request لتخزين التكوين الحالي كإعداد مسبق مسمى.

افتح Saved في شريط الأدوات لتصفح إعداداتك المسبقة أو إعادة تسميتها أو حذفها. انقر على أي إعداد مسبق لتحميله مرة أخرى في النموذج.

حقل الإعداد المسبق ما يخزنه
Name تسمية قصيرة (حتى 100 حرف)
Description ملاحظات اختيارية (حتى 500 حرف)
Endpoint المحرك الذي يخصه الإعداد المسبق (auto / single / proxy / browser)
Config حمولة الـ request الكاملة، بما في ذلك حقول واجهة المستخدم، والـ header، والـ cookie، والـ body

يقتصر نطاق الإعدادات المسبقة على حساب المستخدم الخاص بك ولا يتم مشاركتها مع أعضاء الفريق.

إعادة التشغيل من السجل

يتم تسجيل كل request تقوم بتشغيله. افتح History في شريط الأدوات لرؤية آخر 20 عملية تشغيل، مرتبة من الأحدث للأقدم.

يعرض كل صف الـ endpoint، والـ URL المستهدف، والحالة، والوقت. انقر على Replay في أي صف لتحميل هذا الـ request مرة أخرى في النموذج، ثم Send لتشغيله مجددا.

يقتصر السجل تلقائيا على حسابك، حيث ترى عمليات التشغيل الخاصة بك فقط.

الفتح من النشاط

يحتوي مربع حوار تفاصيل Activity Log على زر Open in Playground. انقر عليه وسيتم تحميل الـ Playground مع كل من الـ request والـ response المؤرشفين. يمتلئ النموذج من الحمولة المخزنة، وتعرض بطاقة الـ response ما أرجعه الـ API في تلك اللحظة مع شارة "archived" على شريط بيانات الـ proxy الوصفية ("archived

من هناك يمكنك تغيير معلمة والضغط على Send لتشغيل request جديد مقابل الـ API المباشر، أو مجرد فحص الحمولة المؤرشفة دون إعادة تشغيلها. يتم الاحتفاظ بالحمولات لمدة 24 ساعة، لذلك لن تحتوي صفوف النشاط القديمة على response قابل لإعادة التحميل.

نصائح

  • ابدأ في Playground قبل كتابة الكود ضد هدف جديد. مع تشغيل Auto، ستعرف في غضون ثوانٍ ما إذا كانت عملية fetch رخيصة كافية أم أن الموقع يفرض عملية browser solve.
  • بالنسبة للأهداف المقفلة جغرافيا، قم بتشغيل استدعاء Proxy واحد مع تعيين exitCountries، ثم انقل proxy ID المرجع إلى استدعاء Browser بحيث يحدث تصيير JavaScript من خلال المخرج نفسه.
  • احفظ preset لكل هدف تقوم بعمل scrape له بانتظام. إعادة تشغيل preset المحفوظ يتطلب نقرة واحدة، بينما تستغرق إعادة بناء الطلب من الذاكرة وقتا أطول.
  • استخدم علامة التبويب Cookies لتصحيح أخطاء الـ scraping المعتمد على الجلسة. يعرض العرض الخام لـ Set-Cookie بالضبط ما أرسله الهدف.
  • عندما يرفضك هدف ما، جرب إدخالا آخر في تحديدات Browser profile قبل اللجوء إلى محرك أثقل. تبديل المتصفح المقدم مجاني، بينما الـ browser render ليس كذلك.
  • تتم فوترة طلبات Playground على المفتاح الذي تختاره. استخدم مفتاحا مخصصا بـ quota منخفضة للاستكشاف العرضي إذا كنت تريد الحفاظ على نظافة استخدام الإنتاج.

ذات صلة

  • API Endpoints: مرجع كامل للمعلمات لجميع المحركات الأربعة، بما في ذلك exitCountries وحقول Browser profile
  • Smart Fetch (Auto): ما يفعله Auto في الخلفية
  • Choosing the Right Endpoint: متى تختار Auto مقابل Single أو Proxy أو Browser
  • API Keys: إدارة المفاتيح التي تصادق بها على طلبات Playground
  • Activity Log: فتح طلب سابق مباشرة في Playground
  • Dashboard Overview: جميع أقسام الشريط الجانبي
آخر تحديث: 12 أغسطس 2026