उपयोगकर्ता के जवाब की पुष्टि करना

इस पेज पर, आपके ऐप्लिकेशन के बैकएंड से, reCAPTCHA चैलेंज के लिए उपयोगकर्ता के जवाब की पुष्टि करने का तरीका बताया गया है.

वेब उपयोगकर्ताओं के लिए, आपको इन तीन में से किसी एक तरीके से उपयोगकर्ता का रिस्पॉन्स टोकन मिल सकता है:

  • g-recaptcha-response जब उपयोगकर्ता आपकी साइट पर फ़ॉर्म सबमिट करता है, तब POST पैरामीटर
  • grecaptcha.getResponse(opt_widget_id) उपयोगकर्ता के reCAPTCHA चैलेंज को पूरा करने के बाद
  • आपके callback फ़ंक्शन में स्ट्रिंग तर्क के रूप में अगर data-callback को g-recaptcha टैग एट्रिब्यूट में बताया गया है या grecaptcha.render तरीके में कॉलबैक पैरामीटर

Android लाइब्रेरी का इस्तेमाल करने वाले लोग, SafetyNetApi.RecaptchaTokenResult.getTokenResult() का इस्तेमाल करें.

टोकन से जुड़ी पाबंदियां

reCAPTCHA उपयोगकर्ता के हर रिस्पॉन्स टोकन की समयसीमा दो मिनट के लिए मान्य होती है. इसकी पुष्टि, सिर्फ़ एक बार फिर से चलाने के हमलों से बचें. अगर आपको नया टोकन चाहिए, तो reCAPTCHA से पुष्टि करने की प्रोसेस फिर से शुरू की जा सकती है.

रिस्पॉन्स टोकन मिलने के बाद, आपको दो मिनट के अंदर reCAPTCHA का इस्तेमाल करके इसकी पुष्टि करनी होगी. इसके लिए, यहां दिए गए एपीआई का इस्तेमाल करें. इससे यह पक्का किया जा सकेगा कि टोकन मान्य है.

एपीआई अनुरोध

URL: https://www.google.com/recaptcha/api/siteverify

तरीका: POST

पीओएसटी पैरामीटर ब्यौरा
secret ज़रूरी है. आपकी साइट और reCAPTCHA के बीच शेयर की गई कुंजी.
response ज़रूरी है. आपकी साइट पर reCAPTCHA क्लाइंट-साइड इंटिग्रेशन से मिला उपयोगकर्ता रिस्पॉन्स टोकन.
remoteip ज़रूरी नहीं. उपयोगकर्ता का आईपी पता.

एपीआई से मिला रिस्पॉन्स

रिस्पॉन्स, एक JSON ऑब्जेक्ट है:

{
  "success": true|false,
  "challenge_ts": timestamp,  // timestamp of the challenge load (ISO format yyyy-MM-dd'T'HH:mm:ssZZ)
  "hostname": string,         // the hostname of the site where the reCAPTCHA was solved
  "error-codes": [...]        // optional
}

reCAPTCHA Android के लिए:

{
  "success": true|false,
  "challenge_ts": timestamp,  // timestamp of the challenge load (ISO format yyyy-MM-dd'T'HH:mm:ssZZ)
  "apk_package_name": string, // the package name of the app where the reCAPTCHA was solved
  "error-codes": [...]        // optional
}

गड़बड़ी के कोड का रेफ़रंस

गड़बड़ी का कोड ब्यौरा
missing-input-secret सीक्रेट पैरामीटर मौजूद नहीं है.
invalid-input-secret सीक्रेट पैरामीटर अमान्य या गलत है.
missing-input-response response पैरामीटर मौजूद नहीं है.
invalid-input-response रिस्पॉन्स पैरामीटर अमान्य या गलत है.
bad-request अनुरोध अमान्य या गलत है.
timeout-or-duplicate जवाब अब मान्य नहीं है: या तो बहुत पुराना है या पहले ही इस्तेमाल किया जा चुका है.