בדיקת ה-API של CAPTCHA ב-Insomnia

מאת solvethree3 דקות קריאה

צרו משימה עם גוף JSON, העתיקו את מזהה המשימה שהוחזר ואז אחזרו את המשימה עד שהסטטוס שלה יהיה ready או failed. אין צורך בשרשור תגובות לבדיקה הזו.

בדף הזה

הכינו את התצורה המקומית שלכם

נדרשים מפתח API של סביבת עבודה, פרופיל פעיל לאתר היעד ופרוקסי. הגדירו את פרופיל האתר לפני שליחת המשימה: ציון שם מארח ופעולה לא יוצר פרופיל.

השתמשו בסביבה מקומית פרטית בשם solvethree-local עם המשתנים שלהלן. אלה שמות שנבחרו למדריך הזה, ולא שדות API נוספים. אל תשמרו את מפתח ה-API ואת פרטי ההזדהות לפרוקסי בתצורות משותפות.

משתני סביבה מקומיים
משתני סביבה מקומיים
שםערך
api_basehttps://api.solvethree.com/v1
api_keyמפתח ה-API הפרטי של סביבת העבודה שלכם.
siteשם המארח שהוגדר בפרופיל האתר הפעיל שלכם, ולא כתובת URL מלאה של דף.
actionפעולת ה-reCAPTCHA שבה משתמשת הבקשה ליעד.
proxyכתובת ה-URL של פרוקסי HTTP או HTTPS שלכם, ללא נתיב, שאילתה או מקטע.
request_idמזהה למשימה הלוגית הזו: 1–64 תווי ASCII מסוג אותיות, ספרות, קווים תחתונים או מקפים.
task_idהשאירו ריק עד שתגובת היצירה תספק את מזהה המשימה.

צרו את המשימה ואז העתיקו את המזהה שלה

  1. 1.

    הגדרת בקשת היצירה

    צרו בקשת POST באמצעות api_base ואחריו /tasks. הוסיפו את פרמטר השאילתה waitMs עם הערך 0. בחרו באימות Bearer וספקו את api_key כטוקן; הבקשה חייבת לשלוח כותרת Authorization באמצעות שיטת Bearer.

  2. 2.

    בנו את גוף ה-JSON

    בחרו גוף JSON שמכיל את site,‏ action,‏ proxy ו-requestId. מלאו את שלושת הראשונים מהמשתנים המקומיים התואמים ואת requestId מתוך request_id. שלחו בדיוק אחד מבין proxy או proxyCandidates; המדריך הזה משתמש ב-proxy. אל תוסיפו type או url. השמטת recaptchaType בוחרת בברירת המחדל, enterprise-v3.

  3. 3.

    שלחו ובדקו את התגובה

    בדקו את תגובת ה-HTTP לפני שתקראו אותה כנתוני משימה שהתקבלו בהצלחה. אם היצירה הצליחה, העתיקו את מזהה המשימה שהוחזר אל task_id. שמרו את גוף המשימה ואת request_id זמינים למקרה שתצטרכו לשחזר את הבקשה.

  4. 4.

    אחזרו את המשימה הזו

    צרו בקשת GET באמצעות api_base, אחריו /tasks/ ולבסוף מזהה המשימה שהועתק. הגדירו את waitMs ל-15000, השתמשו באותו מפתח Bearer והשאירו את הגוף ריק. העתיקו את המזהה ידנית; המדריך הזה לא מסתמך על ביטוי לשרשור תגובות.

Insomnia · בקשות יצירה ואחזור
Create task
  Method: POST
  URL: https://api.solvethree.com/v1/tasks?waitMs=0
  Auth: Bearer Token — your private workspace key
  Body: JSON — site, action, proxy and a stable requestId

Retrieve task
  Method: GET
  URL: https://api.solvethree.com/v1/tasks/PASTE_RETURNED_ID?waitMs=15000
  Auth: Bearer Token — the same workspace key
  Body: none

Keep the task's proxy in the JSON body. Insomnia's own network proxy setting
controls its API connection, not the proxy used to generate/submit the solution.

החליטו כיצד לטפל בתגובה

בקשת ה-HTTP מחזירה תגובה שאינה מציינת הצלחה.

בדקו את שגיאת ה-HTTP לפני שתנסו לקרוא נתוני משימה שהתקבלו בהצלחה.

כדאי לנסות: תקנו את בעיית הבקשה או האימות שדווחה. אל תשלחו שוב ושוב קלט לא תקין ללא שינוי, ואל תניחו שכל שגיאה מעידה על יתרה לא מספקת.

המשימה במצב pending או solving.

אף אחד מהמצבים האלה לא מכיל פתרון שמיש.

כדאי לנסות: שלחו שוב את בקשת ה-GET עבור אותו מזהה משימה. אל תיצרו משימה נוספת רק מפני שזו עדיין לא הסתיימה.

המשימה במצב failed.

קראו את errorCode ואת error;‏ site-unreachable היא אחת משגיאות המשימה האפשריות.

כדאי לנסות: הפסיקו לאחזר את המשימה הזו וטפלו בסיבה שדווחה לפני שתתחילו משימה נוספת. מתקבל החזר על פתרונות שנכשלו.

בקשת היצירה חורגת מהזמן הקצוב בלי להחזיר מזהה.

חריגה מהזמן הקצוב לחיבור לא מוכיחה שהיצירה נכשלה.

כדאי לנסות: שלחו שוב את אותו גוף משימה עם אותו requestId כדי לשחזר את המשימה הקיימת. שינוי הקלט תוך שימוש חוזר באותו מזהה גורם להתנגשות.

משימת reCAPTCHA במצב ready מספקת טוקן. אם אתם שולחים אותו ליעד, השתמשו ב-userAgent וב-secChUa שהוחזרו, עם אותו פרוקסי ששימש לפתרון. תגובה במצב מוכן מאשרת שנוצר פתרון — לא שבקשת היישום שלכם הצליחה.

הפעלת המשימה הראשונה שלך.

התחילו עם $5 בקרדיט לסביבת העבודה.

יצירת סביבת עבודה
בדיקת ה-API של CAPTCHA ב-Insomnia · solvethree