عملية التقديم
لاستخدام واجهة برمجة التطبيقات للتعرف على بروتوكول Recaptcha2، يجب أولاً الذهاب إلى لوحة تحكم Ace Data Cloud للحصول على رمز API الخاص بك، احتفظ به للاستخدام لاحقًا.
إذا لم تكن قد قمت بتسجيل الدخول أو التسجيل بعد، فسيتم تحويلك تلقائيًا إلى صفحة تسجيل الدخول لدعوتك للتسجيل وتسجيل الدخول، وبعد الانتهاء، سيتم العودة تلقائيًا إلى الصفحة الحالية.
يمكن استخدام رمز API واحد لاستدعاء جميع خدمات المنصة، دون الحاجة لتقديم طلب منفصل لكل خدمة. عند التقديم لأول مرة، ستحصل على رصيد مجاني لتجربته؛ وعند نفاد الرصيد، يمكنك إعادة شحن الرصيد العام في لوحة التحكم.
📘 الوثائق الكاملة: واجهة برمجة التطبيقات للتعرف على بروتوكول Recaptcha2 →
الاستخدام الأساسي
أولاً، يجب أن نفهم طريقة الاستخدام الأساسية، وهي إدخال عنوان URL للموقع الذي يحتاج إلى معالجة رمز التحقق، للحصول على النتيجة المعالجة. يجب أولاً تمرير حقلwebsite_url ببساطة، وموقعنا التجريبي هو: https://www.google.com/recaptcha/api2/demo، نحتاج إلى الحصول على website_key من صفحة website_url، يجب أولاً فتح هذه الصفحة، ثم الضغط على F12 للدخول إلى وحدة التحكم، وأخيرًا البحث عالميًا في صفحة العناصر عن recaptcha-demo، وسنحصل على النتيجة التالية:

data-sitekey هي قيمة website_key، وفيما يلي النتائج المحددة للمعلمات:

accept: نوع الاستجابة التي ترغب في تلقيها، هنا يتم ملؤها بـapplication/json، أي بتنسيق JSON.authorization: مفتاح استدعاء واجهة برمجة التطبيقات، يمكن اختياره مباشرة بعد التقديم.
website_url: عنوان URL للموقع الذي يحتاج إلى معالجة رمز التحقق.website_key: معرف مفتاح الموقع في Recaptcha2.proxy: اختياري، استخدم وكيل خاص بك (Bring Your Own Proxy). بعد التعيين، ستقوم الخدمة باستخدام IP الوكيل الذي تقدمه لفك تشفير رمز التحقق، للتحكم في جودة IP الخارجي (على سبيل المثال، لتجنب حظر IP الوكيل العام من قبل الموقع المستهدف مما يؤدي إلى إرجاع410 Gone). التنسيق هوscheme://[user:pass@]host:port، حيث يدعمschemehttp/https/socks4/socks5، مثلhttp://user:pass@1.2.3.4:8080. إذا لم يتم ملؤه، سيتم استخدام الوكيل الافتراضي للمنصة.

token، نتيجة التحقق من مهمة Recaptcha2 بعد المعالجة.started_at،finished_at: الوقت الذي بدأ فيه الطلب ومعالجة النتيجة، طابع زمني Unix (ثوانٍ، عائم).elapsed: إجمالي الوقت المستغرق في المعالجة (ثوانٍ).
- أولاً، تحقق يدويًا، كما هو موضح في الصورة أدناه:

- ثم انقر على submit، وراقب تغييرات الشبكة في وحدة التحكم، كما هو موضح في الصورة أدناه:

- تحليل بناء طلب POST المقدم، يمكننا في النهاية النقر بزر الماوس الأيمن على هذا الطلب لنسخ كود CURL، كما هو موضح في الصورة أدناه:

https://www.google.com/recaptcha/api2/demo، نحن بحاجة فقط لتقديم المعامل g-recaptcha-response، ثم نحتاج فقط إلى تمرير الرمز المعالج إلى البيانات أدناه، كود CURL المحدد لاستدعاء الرمز للتحقق هو كما يلي:

الوضع غير المتزامن (async)
بشكل افتراضي، تكون واجهة برمجة التطبيقات متزامنة وتنتظر: ستنتظر الطلب حتى يتم معالجة الرمز قبل أن تعود. إذا كنت تقوم بتدوير حل متعدد (multi-solver rotation) وترغب في “تقديم المهمة والحصول على task_id على الفور، ثم الانتقال إلى جدولة حل آخر، والعودة لاحقًا لقراءة النتيجة”، يمكنك تمريرasync: true في جسم الطلب.
بعد تمرير async: true، ستعيد الواجهة على الفور task_id، دون الانتظار:
task_id للاستعلام عن POST /captcha/tasks (يوصى بذلك كل 3~5 ثوان). هذه الواجهة لن تحفز أو تدفع معالجة المهمة؛ حتى لو لم يتم الاستعلام، أو انقطع الاتصال، أو خرجت من العميل، سيستمر الخادم في المعالجة:
status: processing:
status: ready والرمز:
timeout، دون احتساب رسوم. /captcha/tasks لا تتحمل مسؤولية دفع المهمة.
معالجة الأخطاء
عند استدعاء واجهة برمجة التطبيقات، إذا واجهت خطأ، ستعيد الواجهة رمز الخطأ والمعلومات المقابلة. على سبيل المثال:400 token_mismatched: طلب غير صحيح، ربما بسبب معلمات مفقودة أو غير صالحة.400 api_not_implemented: طلب غير صحيح، ربما بسبب معلمات مفقودة أو غير صالحة.401 invalid_token: غير مصرح به، رمز تفويض غير صالح أو مفقود.429 too_many_requests: عدد كبير جدًا من الطلبات، لقد تجاوزت الحد الأقصى لمعدل الطلبات.500 api_error: خطأ داخلي في الخادم، حدث خطأ ما على الخادم.

