इस रेफ़रंस पेज में, 'Google से साइन इन करें' सुविधा के एचटीएमएल डेटा एट्रिब्यूट एपीआई के बारे में बताया गया है. इसका इस्तेमाल, वेब पेजों पर 'Google से साइन इन करें' बटन या One Tap प्रॉम्प्ट दिखाने के लिए किया जाता है.
"g_id_onload" आईडी वाला एलिमेंट
'Google से साइन इन करें' सुविधा के डेटा एट्रिब्यूट को दिखने वाले या न दिखने वाले किसी भी एलिमेंट में रखा जा सकता है. जैसे, <div> और <span>. इसके लिए, सिर्फ़ यह ज़रूरी है कि एलिमेंट आईडी को g_id_onload पर सेट किया गया हो. इस आईडी को एक से ज़्यादा एलिमेंट पर न डालें.
डेटा एट्रिब्यूट
यहां दी गई टेबल में, डेटा एट्रिब्यूट और उनके ब्यौरे दिए गए हैं:
| एट्रिब्यूट | |
|---|---|
data-client_id |
आपके ऐप्लिकेशन का क्लाइंट आईडी |
data-color_scheme |
यह One Tap प्रॉम्प्ट पर लागू की गई कलर स्कीम है. |
data-auto_prompt |
Google One टैप को डिसप्ले करें. |
data-auto_select |
यह कुकी, Google One Tap पर अपने-आप चुनने की सुविधा चालू करती है. |
data-login_uri |
आपके लॉगिन एंडपॉइंट का यूआरएल |
data-callback |
JavaScript आईडी टोकन हैंडलर फ़ंक्शन का नाम |
data-native_login_uri |
पासवर्ड क्रेडेंशियल हैंडलर एंडपॉइंट का यूआरएल |
data-native_callback |
JavaScript पासवर्ड क्रेडेंशियल हैंडलर फ़ंक्शन का नाम |
data-native_id_param |
credential.id वैल्यू के लिए पैरामीटर का नाम |
data-native_password_param |
credential.password वैल्यू के लिए पैरामीटर का नाम |
data-cancel_on_tap_outside |
इस कुकी से यह कंट्रोल किया जाता है कि अगर उपयोगकर्ता प्रॉम्प्ट के बाहर क्लिक करता है, तो प्रॉम्प्ट को रद्द किया जाए या नहीं. |
data-prompt_parent_id |
यह एक टैप प्रॉम्प्ट कंटेनर एलिमेंट का डीओएम आईडी है |
data-skip_prompt_cookie |
अगर बताई गई कुकी में कोई वैल्यू मौजूद है, तो यह कुकी एक टैप से होने वाले साइन इन की सुविधा को स्किप कर देती है. |
data-nonce |
आईडी टोकन के लिए रैंडम स्ट्रिंग |
data-context |
One Tap प्रॉम्प्ट में मौजूद टाइटल और शब्द |
data-moment_callback |
प्रॉम्प्ट यूज़र इंटरफ़ेस (यूआई) के स्टेटस की सूचना सुनने वाले फ़ंक्शन का नाम |
data-state_cookie_domain |
अगर आपको पैरंट डोमेन और उसके सबडोमेन में One Tap को कॉल करना है, तो इस एट्रिब्यूट को पैरंट डोमेन पास करें. इससे एक ही शेयर की गई कुकी का इस्तेमाल किया जाएगा. |
data-ux_mode |
'Google से साइन इन करें' बटन का उपयोगकर्ता अनुभव (यूएक्स) फ़्लो |
data-allowed_parent_origin |
ऐसे ऑरिजिन जिन्हें इंटरमीडिएट iframe को एम्बेड करने की अनुमति है. अगर यह एट्रिब्यूट मौजूद है, तो One Tap, इंटरमीडिएट iframe मोड में काम करता है. |
data-intermediate_iframe_close_callback |
जब उपयोगकर्ता मैन्युअल तरीके से One Tap बंद करते हैं, तब यह कुकी डिफ़ॉल्ट इंटरमीडिएट iframe के व्यवहार को बदल देती है. |
data-itp_support |
यह कुकी, ITP ब्राउज़र पर अपग्रेड किए गए One Tap UX को चालू करती है. |
data-login_hint |
उपयोगकर्ता के बारे में जानकारी देकर, खाता चुनने की प्रोसेस को स्किप करें. |
data-hd |
डोमेन के हिसाब से खाता चुनने की सुविधा को सीमित करें. |
data-use_fedcm_for_prompt |
इस कुकी से ब्राउज़र को, उपयोगकर्ता के साइन-इन प्रॉम्प्ट को कंट्रोल करने की अनुमति मिलती है. साथ ही, यह आपकी वेबसाइट और Google के बीच साइन-इन फ़्लो को मैनेज करती है. |
data-use_fedcm_for_button |
इस फ़ील्ड से यह तय होता है कि Chrome पर FedCM बटन UX का इस्तेमाल किया जाना चाहिए या नहीं. Chrome के डेस्कटॉप वर्शन के लिए, M125 और उसके बाद के वर्शन और Android के लिए M128 और उसके बाद के वर्शन का इस्तेमाल किया जाना चाहिए. इसकी डिफ़ॉल्ट वैल्यू false होती है. |
data-button_auto_select |
FedCM बटन फ़्लो के लिए, अपने-आप चुनने की सुविधा चालू करनी है या नहीं. अगर यह सुविधा चालू है, तो Google के चालू सेशन वाले नए उपयोगकर्ताओं को अपने-आप साइन इन कर लिया जाएगा. उन्हें खाता चुनने का प्रॉम्प्ट नहीं दिखेगा. डिफ़ॉल्ट वैल्यू false है. |
एट्रिब्यूट के टाइप
यहां दिए गए सेक्शन में, हर एट्रिब्यूट के टाइप और उदाहरण के बारे में जानकारी दी गई है.
data-client_id
यह एट्रिब्यूट, आपके ऐप्लिकेशन का क्लाइंट आईडी होता है. इसे Google Cloud Console में देखा और बनाया जाता है. ज़्यादा जानकारी के लिए, यहां दी गई टेबल देखें:
| टाइप | ज़रूरी है | उदाहरण |
|---|---|---|
| स्ट्रिंग | हां | data-client_id="CLIENT_ID.apps.googleusercontent.com" |
data-color_scheme
इस फ़ील्ड में, One Tap प्रॉम्प्ट पर लागू की गई कलर स्कीम की जानकारी होती है. ज़्यादा जानकारी के लिए, यहां दी गई टेबल देखें:
| टाइप | ज़रूरी है | उदाहरण |
|---|---|---|
| स्ट्रिंग | ज़रूरी नहीं. यह उपयोगकर्ताओं के सिस्टम की डिफ़ॉल्ट कलर स्कीम पर सेट होता है. | data-color_scheme="dark" |
यहां दी गई टेबल में, उपलब्ध कलर स्कीम और उनके बारे में जानकारी दी गई है.
| कलर स्कीम | |
|---|---|
default |
उपयोगकर्ता के सिस्टम की डिफ़ॉल्ट कलर स्कीम लागू करें. यह इस बात पर निर्भर करता है कि उपयोगकर्ता की पसंद के हिसाब से स्कीम हल्की है या गहरे रंग की. |
light |
हल्के रंग वाली कलर स्कीम लागू करें. |
dark |
गहरे रंग वाली कलर स्कीम लागू करें. |
data-auto_prompt
इस एट्रिब्यूट से यह तय होता है कि 'एक टैप करके साइन इन करें' सुविधा को दिखाया जाए या नहीं. डिफ़ॉल्ट वैल्यू true है. इस वैल्यू के false होने पर, Google One tap नहीं दिखता. ज़्यादा जानकारी के लिए, यहां दी गई टेबल देखें:
| टाइप | ज़रूरी है | उदाहरण |
|---|---|---|
| बूलियन | वैकल्पिक | data-auto_prompt="true" |
data-auto_select
यह एट्रिब्यूट तय करता है कि अगर सिर्फ़ एक Google सेशन ने आपके ऐप्लिकेशन को अनुमति दी है, तो उपयोगकर्ता के किसी भी इंटरैक्शन के बिना, आईडी टोकन अपने-आप वापस भेजना है या नहीं.
डिफ़ॉल्ट वैल्यू false है. ज़्यादा जानकारी के लिए, यहां दी गई टेबल देखें:
| टाइप | ज़रूरी है | उदाहरण |
|---|---|---|
| बूलियन | वैकल्पिक | data-auto_select="true" |
data-login_uri
यह एट्रिब्यूट, आपके लॉगिन एंडपॉइंट का यूआरआई होता है.
यह वैल्यू, OAuth 2.0 क्लाइंट के लिए अनुमति वाले रीडायरेक्ट यूआरआई में से किसी एक से पूरी तरह मेल खानी चाहिए. इसे आपने Google Auth Platform में कॉन्फ़िगर किया है. साथ ही, यह रीडायरेक्ट यूआरआई की पुष्टि करने के नियमों के मुताबिक होनी चाहिए.
अगर मौजूदा पेज आपका लॉगिन पेज है, तो इस एट्रिब्यूट को छोड़ा जा सकता है. ऐसे में, क्रेडेंशियल डिफ़ॉल्ट रूप से इस पेज पर पोस्ट किया जाता है.
जब कोई कॉलबैक फ़ंक्शन तय नहीं किया जाता है और कोई उपयोगकर्ता 'Google से साइन इन करें' या One Tap बटन पर क्लिक करता है या अपने-आप साइन इन हो जाता है, तब आईडी टोकन क्रेडेंशियल रिस्पॉन्स को आपके लॉगिन एंडपॉइंट पर पोस्ट किया जाता है.
आपके लॉगिन एंडपॉइंट को, ऐसे POST अनुरोधों को मैनेज करना होगा जिनमें बॉडी में आईडी टोकन वैल्यू के साथ credential पैरामीटर शामिल हो.
ज़्यादा जानकारी के लिए, यहां दी गई टेबल देखें:
| टाइप | वैकल्पिक | उदाहरण |
|---|---|---|
| URL | यह मौजूदा पेज के यूआरआई या आपकी तय की गई वैल्यू पर सेट होता है.data-ux_mode="popup" और data-callback सेट होने पर, इसे अनदेखा कर दिया जाता है. |
data-login_uri="https://www.example.com/login" |
data-callback
यह एट्रिब्यूट, JavaScript फ़ंक्शन का नाम है. यह फ़ंक्शन, दिखाए गए आईडी टोकन को मैनेज करता है. ज़्यादा जानकारी के लिए, यहां दी गई टेबल देखें:
| टाइप | ज़रूरी है | उदाहरण |
|---|---|---|
| स्ट्रिंग | अगर data-login_uri सेट नहीं किया गया है, तो इसका इस्तेमाल करना ज़रूरी है. |
data-callback="handleToken" |
data-login_uri और data-callback एट्रिब्यूट में से किसी एक का इस्तेमाल किया जा सकता है. यह इन कॉम्पोनेंट और यूज़र एक्सपीरियंस मोड के कॉन्फ़िगरेशन पर निर्भर करता है:
data-login_uriएट्रिब्यूट, 'Google से साइन इन करें' बटनredirectयूज़र एक्सपीरियंस मोड के लिए ज़रूरी है. यहdata-callbackएट्रिब्यूट को अनदेखा करता है.Google One Tap और Google साइन-इन बटन
popupयूज़र एक्सपीरियंस मोड के लिए, इन दोनों एट्रिब्यूट में से किसी एक को सेट करना ज़रूरी है. अगर दोनों एट्रिब्यूट सेट किए गए हैं, तोdata-callbackएट्रिब्यूट को ज़्यादा प्राथमिकता दी जाती है.
एचटीएमएल एपीआई, नेमस्पेस में मौजूद JavaScript फ़ंक्शन के साथ काम नहीं करता.
इसके बजाय, नेमस्पेस के बिना ग्लोबल JavaScript फ़ंक्शन का इस्तेमाल करें. उदाहरण के लिए, mylib.callback के बजाय mylibCallback का इस्तेमाल करें.
data-native_login_uri
यह एट्रिब्यूट, आपके पासवर्ड क्रेडेंशियल हैंडलर एंडपॉइंट का यूआरएल होता है. अगर आपने data-native_login_uri एट्रिब्यूट या data-native_callback एट्रिब्यूट सेट किया है, तो Google सेशन न होने पर JavaScript लाइब्रेरी, बिल्ट-इन क्रेडेंशियल मैनेजर पर वापस आ जाती है. आपको data-native_callback और data-native_login_uri, दोनों एट्रिब्यूट की वैल्यू सेट करने की अनुमति नहीं है. ज़्यादा जानकारी के लिए, यहां दी गई टेबल देखें:
| टाइप | ज़रूरी है | उदाहरण |
|---|---|---|
| स्ट्रिंग | वैकल्पिक | data-login_uri="https://www.example.com/password_login" |
data-native_callback
यह एट्रिब्यूट, JavaScript फ़ंक्शन का नाम है. यह ब्राउज़र के पहले से मौजूद क्रेडेंशियल मैनेजर से मिले पासवर्ड क्रेडेंशियल को मैनेज करता है. data-native_login_uri एट्रिब्यूट या data-native_callback एट्रिब्यूट में से किसी एक को सेट करने पर, JavaScript लाइब्रेरी, Google सेशन न होने पर पहले से मौजूद क्रेडेंशियल मैनेजर पर वापस आ जाती है. आपको data-native_callback और data-native_login_uri, दोनों को सेट करने की अनुमति नहीं है. ज़्यादा जानकारी के लिए, यहां दी गई टेबल देखें:
| टाइप | ज़रूरी है | उदाहरण |
|---|---|---|
| स्ट्रिंग | वैकल्पिक | data-native_callback="handlePasswordCredential" |
एचटीएमएल एपीआई, नेमस्पेस में मौजूद JavaScript फ़ंक्शन के साथ काम नहीं करता.
इसके बजाय, नेमस्पेस के बिना ग्लोबल JavaScript फ़ंक्शन का इस्तेमाल करें. उदाहरण के लिए, mylib.callback के बजाय mylibCallback का इस्तेमाल करें.
data-native_id_param
पासवर्ड क्रेडेंशियल को पासवर्ड क्रेडेंशियल हैंडलर एंडपॉइंट पर सबमिट करते समय, credential.id फ़ील्ड के लिए पैरामीटर का नाम तय किया जा सकता है. डिफ़ॉल्ट नाम email है. ज़्यादा जानकारी के लिए, यहां दी गई टेबल देखें:
| टाइप | ज़रूरी है | उदाहरण |
|---|---|---|
| URL | वैकल्पिक | data-native_id_param="user_id" |
data-native_password_param
पासवर्ड क्रेडेंशियल को पासवर्ड क्रेडेंशियल हैंडलर एंडपॉइंट पर सबमिट करते समय, credential.password वैल्यू के लिए पैरामीटर का नाम तय किया जा सकता है. डिफ़ॉल्ट नाम password है. ज़्यादा जानकारी के लिए, यहां दी गई टेबल देखें:
| टाइप | ज़रूरी है | उदाहरण |
|---|---|---|
| URL | वैकल्पिक | data-native_password_param="pwd" |
data-cancel_on_tap_outside
इस एट्रिब्यूट से यह तय होता है कि अगर उपयोगकर्ता प्रॉम्प्ट के बाहर क्लिक करता है, तो One Tap के अनुरोध को रद्द करना है या नहीं. डिफ़ॉल्ट वैल्यूtrue है इसे बंद करने के लिए, वैल्यू को false पर सेट करें. ज़्यादा जानकारी के लिए, यहां दी गई टेबल देखें:
| टाइप | ज़रूरी है | उदाहरण |
|---|---|---|
| बूलियन | वैकल्पिक | data-cancel_on_tap_outside="false" |
data-prompt_parent_id
यह एट्रिब्यूट, कंटेनर एलिमेंट का डीओएम आईडी सेट करता है. अगर यह सेट नहीं है, तो विंडो के सबसे ऊपर दाएं कोने में, एक टैप वाला प्रॉम्प्ट दिखता है. ज़्यादा जानकारी के लिए, यहां दी गई टेबल देखें:
| टाइप | ज़रूरी है | उदाहरण |
|---|---|---|
| स्ट्रिंग | वैकल्पिक | data-prompt_parent_id="parent_id" |
data-skip_prompt_cookie
यह कुकी, One Tap प्रॉम्प्ट को दिखाने की सुविधा को कंट्रोल करने के लिए इस्तेमाल की जाती है. अगर इस एट्रिब्यूट से तय की गई कुकी की वैल्यू खाली नहीं है, तो प्रॉम्प्ट नहीं दिखाया जाता. ज़्यादा जानकारी के लिए, यहां दी गई टेबल देखें:
| टाइप | ज़रूरी है | उदाहरण |
|---|---|---|
| स्ट्रिंग | वैकल्पिक | data-skip_prompt_cookie="SID" |
data-nonce
यह एट्रिब्यूट एक रैंडम स्ट्रिंग है. इसका इस्तेमाल आईडी टोकन, रीप्ले अटैक को रोकने के लिए करता है. ज़्यादा जानकारी के लिए, यहां दी गई टेबल देखें:
| टाइप | ज़रूरी है | उदाहरण |
|---|---|---|
| स्ट्रिंग | वैकल्पिक | data-nonce="biaqbm70g23" |
नॉनस की लंबाई, आपके एनवायरमेंट में इस्तेमाल किए जा सकने वाले ज़्यादा से ज़्यादा JWT साइज़ तक सीमित होती है. साथ ही, यह अलग-अलग ब्राउज़र और सर्वर के एचटीटीपी साइज़ की सीमाओं पर भी निर्भर करती है.
data-context
इस फ़ील्ड से, One Tap प्रॉम्प्ट में दिखने वाले टाइटल और मैसेज का टेक्स्ट बदल जाता है. हालांकि, इसका असर ITP ब्राउज़र पर नहीं पड़ता. डिफ़ॉल्ट रूप से, यह signin पर सेट होता है.
ज़्यादा जानकारी के लिए, यहां दी गई टेबल देखें:
| टाइप | ज़रूरी है | उदाहरण |
|---|---|---|
| स्ट्रिंग | वैकल्पिक | data-context="use" |
यहां दी गई टेबल में, उपलब्ध सभी कॉन्टेक्स्ट और उनके ब्यौरे दिए गए हैं:
| कॉन्टेक्स्ट | |
|---|---|
signin |
"इसमें साइन इन करें" |
signup |
"इसके लिए साइन अप करें" |
use |
"इस्तेमाल करें" |
data-moment_callback
यह एट्रिब्यूट, प्रॉम्प्ट यूज़र इंटरफ़ेस (यूआई) की स्थिति में बदलाव होने की सूचना देने वाले लिसनर का फ़ंक्शन नाम है. ज़्यादा जानकारी के लिए, डेटा टाइप PromptMomentNotification देखें.
ज़्यादा जानकारी के लिए, यहां दी गई टेबल देखें:
| टाइप | ज़रूरी है | उदाहरण |
|---|---|---|
| स्ट्रिंग | वैकल्पिक | data-moment_callback="logMomentNotification" |
एचटीएमएल एपीआई, नेमस्पेस में मौजूद JavaScript फ़ंक्शन के साथ काम नहीं करता.
इसके बजाय, नेमस्पेस के बिना ग्लोबल JavaScript फ़ंक्शन का इस्तेमाल करें. उदाहरण के लिए, mylib.callback के बजाय mylibCallback का इस्तेमाल करें.
data-state_cookie_domain
अगर आपको पैरंट डोमेन और उसके सबडोमेन में 'एक टैप से साइन इन करें' सुविधा दिखानी है, तो इस एट्रिब्यूट को पैरंट डोमेन पास करें. इससे एक ही शेयर की गई कुकी का इस्तेमाल किया जा सकेगा. ज़्यादा जानकारी के लिए, यहां दी गई टेबल देखें:
| टाइप | ज़रूरी है | उदाहरण |
|---|---|---|
| स्ट्रिंग | वैकल्पिक | data-state_cookie_domain="example.com" |
data-ux_mode
इस एट्रिब्यूट से, 'Google से साइन इन करें' बटन के लिए इस्तेमाल किया जाने वाला यूज़र एक्सपीरियंस (यूएक्स) फ़्लो सेट किया जाता है. डिफ़ॉल्ट वैल्यू popup है. इस एट्रिब्यूट का, एक टैप वाले यूज़र एक्सपीरियंस पर कोई असर नहीं पड़ता. ज़्यादा जानकारी के लिए, यहां दी गई टेबल देखें:
| टाइप | ज़रूरी है | उदाहरण |
|---|---|---|
| स्ट्रिंग | वैकल्पिक | data-ux_mode="redirect" |
यहां दी गई टेबल में, उपलब्ध यूज़र एक्सपीरियंस मोड और उनके ब्यौरे दिए गए हैं.
| UX मोड | |
|---|---|
popup |
यह कुकी, पॉप-अप विंडो में साइन-इन यूज़र एक्सपीरियंस फ़्लो को पूरा करती है. |
redirect |
यह कुकी, पूरे पेज को रीडायरेक्ट करके साइन-इन यूज़र एक्सपीरियंस (यूएक्स) फ़्लो को पूरा करती है. |
data-allowed_parent_origin
ऐसे ऑरिजिन जिन्हें इंटरमीडिएट iframe को एम्बेड करने की अनुमति है. अगर यह एट्रिब्यूट मौजूद है, तो One Tap, इंटरमीडिएट iframe मोड में काम करता है. ज़्यादा जानकारी के लिए, यहां दी गई टेबल देखें:
| टाइप | ज़रूरी है | उदाहरण |
|---|---|---|
| स्ट्रिंग या स्ट्रिंग अरे | वैकल्पिक | data-allowed_parent_origin="https://example.com" |
यहां दी गई टेबल में, इस्तेमाल की जा सकने वाली वैल्यू के टाइप और उनके बारे में जानकारी दी गई है.
| वैल्यू टाइप | ||
|---|---|---|
string |
एक डोमेन यूआरआई. | "https://example.com" |
string array |
कॉमा लगाकर अलग किए गए डोमेन यूआरआई की सूची. | "https://news.example.com,https://local.example.com" |
अगर data-allowed_parent_origin एट्रिब्यूट की वैल्यू अमान्य है, तो इंटरमीडिएट iframe मोड का एक टैप वाला इनिशियलाइज़ेशन पूरा नहीं होगा और बंद हो जाएगा.
वाइल्डकार्ड प्रीफ़िक्स भी काम करते हैं. उदाहरण के लिए, "https://*.example.com", example.com और इसके सभी लेवल के सबडोमेन (जैसे, news.example.com, login.news.example.com) से मेल खाता है. वाइल्डकार्ड का इस्तेमाल करते समय इन बातों का ध्यान रखें:
- पैटर्न स्ट्रिंग में सिर्फ़ वाइल्डकार्ड और टॉप लेवल डोमेन नहीं हो सकता. उदाहरण के लिए,
https://.comऔरhttps://.co.ukअमान्य हैं, क्योंकि"https://.example.com",example.comऔर इसके सभी सबडोमेन से मेल खाता है. दो अलग-अलग डोमेन दिखाने के लिए, कॉमा लगाकर अलग की गई सूची का इस्तेमाल करें. उदाहरण के लिए,"https://example1.com,https://.example2.com",example1.comऔरexample2.comडोमेन से मेल खाता है. साथ ही, यहexample2.comके सबडोमेन से भी मेल खाता है - वाइल्डकार्ड डोमेन, सुरक्षित https:// स्कीम से शुरू होने चाहिए. इसलिए,
"*.example.com"को अमान्य माना जाता है.
data-intermediate_iframe_close_callback
जब उपयोगकर्ता, One Tap यूज़र इंटरफ़ेस (यूआई) में मौजूद 'X' बटन पर टैप करके, One Tap को मैन्युअल तरीके से बंद करते हैं, तब यह कुकी डिफ़ॉल्ट इंटरमीडिएट iframe के व्यवहार को बदल देती है. डिफ़ॉल्ट रूप से, बीच वाले iframe को DOM से तुरंत हटा दिया जाता है.
data-intermediate_iframe_close_callback फ़ील्ड सिर्फ़ इंटरमीडिएट iframe मोड में काम करता है. इसका असर सिर्फ़ इंटरमीडिएट iframe पर पड़ता है, न कि One Tap iframe पर. कॉलबैक शुरू होने से पहले, One Tap यूज़र इंटरफ़ेस (यूआई) हटा दिया जाता है.
| टाइप | ज़रूरी है | उदाहरण |
|---|---|---|
| फ़ंक्शन | वैकल्पिक | data-intermediate_iframe_close_callback="logBeforeClose" |
एचटीएमएल एपीआई, नेमस्पेस में मौजूद JavaScript फ़ंक्शन के साथ काम नहीं करता.
इसके बजाय, नेमस्पेस के बिना ग्लोबल JavaScript फ़ंक्शन का इस्तेमाल करें. उदाहरण के लिए, mylib.callback के बजाय mylibCallback का इस्तेमाल करें.
data-itp_support
इस फ़ील्ड से यह तय होता है कि क्या
अपग्रेड किए गए 'एक टैप से साइन इन करें' यूज़र एक्सपीरियंस
को उन ब्राउज़र पर चालू किया जाना चाहिए जो इंटैलिजेंट ट्रैकिंग प्रिवेंशन (आईटीपी) की सुविधा के साथ काम करते हैं. डिफ़ॉल्ट वैल्यू false है. ज़्यादा जानकारी के लिए, यहां दी गई टेबल देखें:
| टाइप | ज़रूरी है | उदाहरण |
|---|---|---|
| बूलियन | वैकल्पिक | data-itp_support="true" |
data-login_hint
अगर आपके ऐप्लिकेशन को पहले से पता है कि किस उपयोगकर्ता को साइन इन करना चाहिए, तो वह Google को लॉगिन हिंट दे सकता है. अगर यह प्रोसेस पूरी हो जाती है, तो खाता चुनने का विकल्प नहीं दिखता. स्वीकार की गई वैल्यू ये हैं: ईमेल पता या आईडी टोकन का sub फ़ील्ड.
ज़्यादा जानकारी के लिए,
login_hint के लिए OpenID Connect का दस्तावेज़ देखें.
| टाइप | ज़रूरी है | उदाहरण |
|---|---|---|
स्ट्रिंग. यह ईमेल पता या आईडी टोकन से मिली sub फ़ील्ड की वैल्यू हो सकती है. |
वैकल्पिक | data-login_hint="elisa.beckett@gmail.com" |
data-hd
जब किसी उपयोगकर्ता के पास एक से ज़्यादा खाते हों और उसे सिर्फ़ अपने Workspace खाते से साइन-इन करना हो, तो Google को डोमेन नेम का हिंट देने के लिए इसका इस्तेमाल करें. अगर यह प्रोसेस पूरी हो जाती है, तो खाता चुनने के दौरान दिखने वाले उपयोगकर्ता खाते, दिए गए डोमेन तक सीमित हो जाते हैं.
वाइल्डकार्ड वैल्यू: * से उपयोगकर्ता को सिर्फ़ Workspace खाते मिलते हैं. साथ ही, खाता चुनने के दौरान उपभोक्ता खातों (user@gmail.com) को शामिल नहीं किया जाता.
ज़्यादा जानकारी के लिए,
hd के लिए OpenID Connect का दस्तावेज़ देखें.
| टाइप | ज़रूरी है | उदाहरण |
|---|---|---|
| स्ट्रिंग. पूरी तरह क्वालिफ़ाइड डोमेन नेम या *. | वैकल्पिक | data-hd="*" |
data-use_fedcm_for_prompt
ब्राउज़र को उपयोगकर्ता के साइन-इन प्रॉम्प्ट को कंट्रोल करने की अनुमति दें. साथ ही, अपनी वेबसाइट और Google के बीच साइन-इन फ़्लो को मैनेज करने की अनुमति दें. डिफ़ॉल्ट रूप से, यह 'गलत' पर सेट होती है. ज़्यादा जानकारी के लिए, FedCM पर माइग्रेट करना पेज देखें.
| टाइप | ज़रूरी है | उदाहरण |
|---|---|---|
| बूलियन | वैकल्पिक | data-use_fedcm_for_prompt="true" |
data-use_fedcm_for_button
इस फ़ील्ड से यह तय होता है कि Chrome (डेस्कटॉप M125+ और Android M128+) पर FedCM बटन UX का इस्तेमाल किया जाना चाहिए या नहीं. इसकी डिफ़ॉल्ट वैल्यू false होती है. ज़्यादा जानकारी के लिए, यहां दी गई टेबल देखें:
| टाइप | ज़रूरी है | उदाहरण |
|---|---|---|
| बूलियन | वैकल्पिक | data-use_fedcm_for_button="true" |
data-button_auto_select
इस फ़ील्ड से यह तय होता है कि FedCM बटन फ़्लो के लिए, अपने-आप चुनने का विकल्प चालू करना है या नहीं. अगर यह सुविधा चालू है, तो Google के चालू सेशन वाले वापस आने वाले उपयोगकर्ताओं को अपने-आप साइन इन कर दिया जाएगा. उन्हें खाता चुनने का प्रॉम्प्ट नहीं दिखेगा. इसकी डिफ़ॉल्ट वैल्यू false होती है. आपको ऑप्ट-इन लॉन्च के दौरान, बटन के अपने-आप साइन-इन होने की सुविधा को साफ़ तौर पर चालू करना होगा. ज़्यादा जानकारी के लिए, यहां दी गई टेबल देखें:
| टाइप | ज़रूरी है | उदाहरण |
|---|---|---|
| बूलियन | वैकल्पिक | data-button_auto_select="true" |
"g_id_signin" क्लास वाला एलिमेंट
किसी एलिमेंट के class एट्रिब्यूट में g_id_signin जोड़ने पर, एलिमेंट को 'Google से साइन इन करें' बटन के तौर पर रेंडर किया जाता है.
एक ही पेज पर, 'Sign In With Google' बटन के कई वर्शन रेंडर किए जा सकते हैं. हर बटन की अपनी विज़ुअल सेटिंग हो सकती हैं. ये सेटिंग, डेटा के इन एट्रिब्यूट से तय होती हैं.
विज़ुअल डेटा एट्रिब्यूट
यहां दी गई टेबल में, विज़ुअल डेटा एट्रिब्यूट और उनके ब्यौरे दिए गए हैं:
| एट्रिब्यूट | |
|---|---|
data-type |
बटन का टाइप: आइकॉन या स्टैंडर्ड बटन. |
data-theme |
बटन की थीम. उदाहरण के लिए, filled_blue या filled_black. |
data-size |
बटन का साइज़. उदाहरण के लिए, छोटा या बड़ा. |
data-text |
बटन का टेक्स्ट. उदाहरण के लिए, "Google से साइन इन करें" या "Google से साइन अप करें". |
data-shape |
बटन का आकार. उदाहरण के लिए, आयताकार या गोलाकार. |
data-logo_alignment |
Google के लोगो का अलाइनमेंट: बाईं ओर या बीच में. |
data-width |
बटन की चौड़ाई, पिक्सल में. |
data-locale |
बटन का टेक्स्ट, इस एट्रिब्यूट में सेट की गई भाषा में रेंडर होता है. |
data-click_listener |
अगर इस फ़ंक्शन को सेट किया जाता है, तो 'Google से साइन इन करें' बटन पर क्लिक करने पर इसे कॉल किया जाता है. |
data-state |
अगर यह सेट है, तो यह स्ट्रिंग आईडी टोकन के साथ दिखती है. |
एट्रिब्यूट के टाइप
यहां दिए गए सेक्शन में, हर एट्रिब्यूट के टाइप और उदाहरण के बारे में जानकारी दी गई है.
data-type
बटन का टाइप. डिफ़ॉल्ट वैल्यूstandard है ज़्यादा जानकारी के लिए, यहां दी गई टेबल देखें:
| टाइप | ज़रूरी है | उदाहरण |
|---|---|---|
| स्ट्रिंग | हां | data-type="icon" |
यहां दी गई टेबल में, बटन के सभी उपलब्ध टाइप और उनके बारे में जानकारी दी गई है:
| टाइप | |
|---|---|
standard |
|
icon |
|
data-theme
बटन की थीम. डिफ़ॉल्ट वैल्यूoutline है ज़्यादा जानकारी के लिए, यहां दी गई टेबल देखें:
| टाइप | ज़रूरी है | उदाहरण |
|---|---|---|
| स्ट्रिंग | वैकल्पिक | data-theme="filled_blue" |
यहां दी गई टेबल में, उपलब्ध थीम और उनके बारे में जानकारी दी गई है:
| थीम | |
|---|---|
outline |
|
filled_blue |
|
filled_black |
|
data-size
बटन का साइज़. डिफ़ॉल्ट वैल्यूlarge है ज़्यादा जानकारी के लिए, यहां दी गई टेबल देखें:
| टाइप | ज़रूरी है | उदाहरण |
|---|---|---|
| स्ट्रिंग | वैकल्पिक | data-size="small" |
यहां दी गई टेबल में, बटन के उपलब्ध साइज़ और उनके बारे में जानकारी दी गई है.
| साइज़ | |
|---|---|
large |
|
medium |
|
small |
|
data-text
बटन का टेक्स्ट. डिफ़ॉल्ट वैल्यूsignin_with है जिन आइकॉन बटन में अलग-अलग data-text एट्रिब्यूट होते हैं उनके टेक्स्ट में कोई विज़ुअल अंतर नहीं होता. हालांकि, स्क्रीन रीडर के लिए टेक्स्ट पढ़ने के मामले में ऐसा नहीं होता.
ज़्यादा जानकारी के लिए, यहां दी गई टेबल देखें:
| टाइप | ज़रूरी है | उदाहरण |
|---|---|---|
| स्ट्रिंग | वैकल्पिक | data-text="signup_with" |
यहां दी गई टेबल में, बटन के लिए उपलब्ध टेक्स्ट और उनके बारे में जानकारी दी गई है:
| टेक्स्ट | |
|---|---|
signin_with |
|
signup_with |
|
continue_with |
|
signin |
|
data-shape
बटन का आकार. डिफ़ॉल्ट वैल्यूrectangular है ज़्यादा जानकारी के लिए, यहां दी गई टेबल देखें:
| टाइप | ज़रूरी है | उदाहरण |
|---|---|---|
| स्ट्रिंग | वैकल्पिक | data-shape="rectangular" |
यहां दी गई टेबल में, बटन के उपलब्ध शेप और उनके बारे में जानकारी दी गई है:
| आकार | |
|---|---|
rectangular |
icon
बटन टाइप के लिए किया जाता है, तो यह square के बराबर होता है.
|
pill |
icon बटन टाइप के लिए किया जाता है, तो यह circle के बराबर होता है.
|
circle |
standard
बटन टाइप के लिए किया जाता है, तो यह pill के बराबर होता है.
|
square |
standard
बटन टाइप के लिए किया जाता है, तो यह rectangular के बराबर होता है.
|
data-logo_alignment
Google के लोगो का अलाइनमेंट. डिफ़ॉल्ट वैल्यूleft है यह एट्रिब्यूट, सिर्फ़ standard बटन टाइप पर लागू होता है. ज़्यादा जानकारी के लिए, यहां दी गई टेबल देखें:
| टाइप | ज़रूरी है | उदाहरण |
|---|---|---|
| स्ट्रिंग | वैकल्पिक | data-logo_alignment="center" |
यहां दी गई टेबल में, उपलब्ध अलाइनमेंट और उनके ब्यौरे दिए गए हैं:
| logo_alignment | |
|---|---|
left |
|
center |
|
data-width
बटन की कम से कम चौड़ाई, पिक्सल में. ज़्यादा से ज़्यादा 400 पिक्सल की चौड़ाई उपलब्ध है.
ज़्यादा जानकारी के लिए, यहां दी गई टेबल देखें:
| टाइप | ज़रूरी है | उदाहरण |
|---|---|---|
| स्ट्रिंग | वैकल्पिक | data-width=400 |
data-locale
ज़रूरी नहीं. बटन के टेक्स्ट को तय की गई स्थान-भाषा में दिखाएं. ऐसा न होने पर, उपयोगकर्ताओं के Google खाते या ब्राउज़र की सेटिंग के हिसाब से टेक्स्ट दिखाएं. लाइब्रेरी लोड करते समय, src डायरेक्टिव में hl पैरामीटर और भाषा कोड जोड़ें. उदाहरण के लिए:
gsi/client?hl=<iso-639-code>.
अगर इसे सेट नहीं किया जाता है, तो ब्राउज़र की डिफ़ॉल्ट स्थान-भाषा या Google सेशन के उपयोगकर्ता की प्राथमिकता का इस्तेमाल किया जाता है. इसलिए, अलग-अलग उपयोगकर्ताओं को स्थानीय भाषा में उपलब्ध बटन के अलग-अलग वर्शन दिख सकते हैं. साथ ही, उनके साइज़ भी अलग-अलग हो सकते हैं.
ज़्यादा जानकारी के लिए, यहां दी गई टेबल देखें:
| टाइप | ज़रूरी है | उदाहरण |
|---|---|---|
| स्ट्रिंग | वैकल्पिक | data-locale="zh_CN" |
data-click_listener
data-click_listener एट्रिब्यूट का इस्तेमाल करके, JavaScript फ़ंक्शन को तय किया जा सकता है. इस फ़ंक्शन को तब कॉल किया जाएगा, जब 'Google से साइन इन करें' बटन पर क्लिक किया जाएगा.
<script>
function onClickHandler(){
console.log("Sign in with Google button clicked...")
}
</script>
.....
<div class="g_id_signin"
data-size="large"
data-theme="outline"
data-click_listener="onClickHandler">
</div>इस उदाहरण में, जब 'Google से साइन इन करें' बटन पर क्लिक किया जाता है, तब 'Google से साइन इन करें' बटन पर क्लिक किया गया... मैसेज को कंसोल में लॉग किया जाता है.
data-state
यह विकल्प इस्तेमाल करना ज़रूरी नहीं है, क्योंकि एक ही पेज पर 'Google से साइन इन करें' बटन के कई वर्शन रेंडर किए जा सकते हैं. इसलिए, हर बटन को एक यूनीक स्ट्रिंग असाइन की जा सकती है. आईडी टोकन के साथ-साथ यही स्ट्रिंग वापस भेजी जाएगी, ताकि यह पता लगाया जा सके कि उपयोगकर्ता ने साइन इन करने के लिए किस बटन पर क्लिक किया.
ज़्यादा जानकारी के लिए, यहां दी गई टेबल देखें:
| टाइप | ज़रूरी है | उदाहरण |
|---|---|---|
| स्ट्रिंग | वैकल्पिक | data-state="button 1" |
सर्वर-साइड इंटिग्रेशन
आपके सर्वर-साइड एंडपॉइंट को यहां दिए गए एचटीटीपी POST अनुरोधों को मैनेज करना होगा.
आईडी टोकन हैंडलर एंडपॉइंट
आईडी टोकन हैंडलर एंडपॉइंट, आईडी टोकन को प्रोसेस करता है. खाते की स्थिति के आधार पर, उपयोगकर्ता को साइन इन किया जा सकता है. इसके बाद, उसे साइन-अप पेज पर रीडायरेक्ट किया जा सकता है. इसके अलावा, उसे खाते को लिंक करने वाले पेज पर रीडायरेक्ट किया जा सकता है, ताकि वह ज़्यादा जानकारी देख सके. क्लाइंट को ऐसे रिस्पॉन्स पैरामीटर को अनदेखा करना चाहिए जिन्हें पहचाना नहीं गया है.
आपके लॉगिन एंडपॉइंट के लिए अनुरोध का उदाहरण:
POST /login HTTP/1.1
Content-Type: application/x-www-form-urlencoded
Cookie: g_csrf_token=<RANDOM_STRING>
Host: www.example.com
credential=<JWT_ENCODED_ID_TOKEN>&g_csrf_token=<RANDOM_STRING>
एचटीटीपी POST अनुरोध में यह जानकारी शामिल होती है:
| फ़ॉर्मैट | नाम | ब्यौरा |
|---|---|---|
| कुकी | g_csrf_token |
यह एक रैंडम स्ट्रिंग होती है. यह लॉगिन एंडपॉइंट के हर अनुरोध के साथ बदलती है. इसे data-login_uri में तय किया जाता है. यह g_csrf_token अनुरोध पैरामीटर में मौजूद वैल्यू से मेल खानी चाहिए. |
| अनुरोध पैरामीटर | g_csrf_token |
यह एक रैंडम स्ट्रिंग होती है. यह data-login_uri में बताए गए लॉगिन एंडपॉइंट के हर अनुरोध के साथ बदलती है. यह g_csrf_token कुकी की वैल्यू से मेल खानी चाहिए. |
| अनुरोध पैरामीटर | credential |
यह Google का जारी किया गया, कोड में बदला गया JWT आईडी टोकन होता है. |
| अनुरोध पैरामीटर | select_by |
उपयोगकर्ता ने कैसे साइन इन किया. |
| अनुरोध पैरामीटर | state |
इस पैरामीटर को सिर्फ़ तब तय किया जाता है, जब उपयोगकर्ता साइन इन करने के लिए, 'Google से साइन इन करें' बटन पर क्लिक करता है और बटन का state एट्रिब्यूट तय किया जाता है. |
क्रेडेंशियल
डिकोड करने पर, आईडी टोकन इस उदाहरण की तरह दिखता है:
header { "alg": "RS256", "kid": "f05415b13acb9590f70df862765c655f5a7a019e", // JWT signature "typ": "JWT" } payload { "iss": "https://accounts.google.com", // The JWT's issuer "nbf": 161803398874, "aud": "314159265-pi.apps.googleusercontent.com", // Your server's client ID "sub": "3141592653589793238", // The unique ID of the user's Google Account "hd": "gmail.com", // If present, the host domain of the user's GSuite email address "email": "elisa.g.beckett@gmail.com", // The user's email address "email_verified": true, // true, if Google has verified the email address "azp": "314159265-pi.apps.googleusercontent.com", "name": "Elisa Beckett", // If present, a URL to user's profile picture "picture": "https://lh3.googleusercontent.com/a-/e2718281828459045235360uler", "given_name": "Eliza", "family_name": "Beckett", "iat": 1596474000, // Unix timestamp of the assertion's creation time "exp": 1596477600, // Unix timestamp of the assertion's expiration time "jti": "abc161803398874def" }
क्लाइंट को ऐसे JWT दावों को अनदेखा करना होगा जिनकी पहचान नहीं हुई है.
sub फ़ील्ड, Google खाते के लिए दुनिया भर में यूनीक आइडेंटिफ़ायर है. उपयोगकर्ता के लिए आइडेंटिफ़ायर के तौर पर, सिर्फ़ sub फ़ील्ड का इस्तेमाल करें. ऐसा इसलिए, क्योंकि यह सभी Google खातों में यूनीक होता है और इसे कभी भी दोबारा इस्तेमाल नहीं किया जाता.
email, email_verified, और hd फ़ील्ड का इस्तेमाल करके, यह पता लगाया जा सकता है कि Google किसी ईमेल पते को होस्ट करता है और उसके लिए आधिकारिक है या नहीं. ऐसे मामलों में जहां Google के पास पुष्टि करने का अधिकार है, वहां यह पुष्टि की जाती है कि उपयोगकर्ता ही खाते का असली मालिक है.
ऐसे मामले जिनमें Google आधिकारिक स्रोत है:
emailमें@gmail.comसफ़िक्स है, तो यह एक Gmail खाता है.email_verifiedसही है औरhdसेट है, तो यह Google Workspace खाता है.
उपयोगकर्ता, Gmail या Google Workspace का इस्तेमाल किए बिना Google खातों के लिए रजिस्टर कर सकते हैं.
जब email में @gmail.com प्रत्यय नहीं होता है और hd मौजूद नहीं होता है, तो Google भरोसेमंद नहीं होता है. इसलिए, उपयोगकर्ता की पुष्टि करने के लिए पासवर्ड या चुनौती के अन्य तरीकों का इस्तेमाल करने का सुझाव दिया जाता है. email_verified भी सही हो सकता है, क्योंकि Google ने Google खाता बनाते समय उपयोगकर्ता की पुष्टि की थी. हालांकि, तीसरे पक्ष के ईमेल खाते का मालिकाना हक तब से बदल गया हो सकता है.
exp फ़ील्ड में, अपने सर्वर साइड पर टोकन की पुष्टि करने की समयसीमा दिखती है. 'Google से साइन इन करें' सुविधा से मिले आईडी टोकन के लिए, यह एक घंटा होता है. आपको समयसीमा खत्म होने से पहले, टोकन की पुष्टि करनी होगी. सेशन मैनेजमेंट के लिए exp का इस्तेमाल न करें. आईडी टोकन की समयसीमा खत्म होने का मतलब यह नहीं है कि उपयोगकर्ता ने साइन आउट कर दिया है. आपके ऐप्लिकेशन की यह ज़िम्मेदारी है कि वह आपके उपयोगकर्ताओं के सेशन मैनेज करे.
g_csrf_token
यह फ़र्ज़ीवाड़े को रोकने वाला स्टेट टोकन है. यह किसी दूसरी साइट से किया गया फ़र्ज़ी अनुरोध (सीएसआरएफ़) टोकन है. इसे gsi/client लाइब्रेरी ने बनाया है. POST पेलोड बॉडी में, एक रैंडम वैल्यू को कुकी और अनुरोध पैरामीटर, दोनों के तौर पर शामिल किया जाता है. अगर आपके सर्वर पर अनुरोध को प्रोसेस करते समय, ये दोनों वैल्यू मेल नहीं खाती हैं, तो अनुरोध को अमान्य माना जाना चाहिए.
select_by
यहां दी गई टेबल में, select_by फ़ील्ड के लिए संभावित वैल्यू दी गई हैं. इस कुकी का इस्तेमाल, सेशन और सहमति की स्थिति के साथ-साथ इस्तेमाल किए गए बटन के टाइप के आधार पर वैल्यू सेट करने के लिए किया जाता है,
उपयोगकर्ता ने One Tap या 'Google से साइन इन करें' बटन दबाया हो या बिना छुए अपने-आप साइन इन होने की सुविधा का इस्तेमाल किया हो.
मौजूदा सेशन मिला या उपयोगकर्ता ने नया सेशन शुरू करने के लिए, किसी Google खाते को चुना और उसमें साइन इन किया.
आपके ऐप्लिकेशन के साथ आईडी टोकन क्रेडेंशियल शेयर करने से पहले, उपयोगकर्ता इनमें से कोई एक काम करता है
- क्रेडेंशियल शेयर करने की सहमति देने के लिए, 'पुष्टि करें' बटन दबाया हो या
- पहले सहमति दी हो और 'कोई खाता चुनें' सुविधा का इस्तेमाल करके Google खाता चुना हो.
इस फ़ील्ड की वैल्यू इनमें से किसी एक टाइप पर सेट होती है,
| मान | ब्यौरा |
|---|---|
auto |
मौजूदा सेशन वाले उपयोगकर्ता के अपने-आप साइन-इन होने की सुविधा. इस उपयोगकर्ता ने क्रेडेंशियल शेयर करने की सहमति पहले ही दे दी थी. यह सिर्फ़ उन ब्राउज़र पर लागू होता है जिनमें FedCM की सुविधा काम नहीं करती. |
user |
किसी ऐसे उपयोगकर्ता ने क्रेडेंशियल शेयर करने के लिए, 'इसके तौर पर जारी रखें' बटन दबाया हो जिसका मौजूदा सेशन चालू है और जिसने पहले सहमति दी थी. यह सिर्फ़ उन ब्राउज़र पर लागू होती है जिन पर FedCM काम नहीं करता. |
fedcm |
किसी उपयोगकर्ता ने FedCM का इस्तेमाल करके क्रेडेंशियल शेयर करने के लिए, 'इसके तौर पर जारी रखें' बटन दबाया. यह सिर्फ़ FedCM के साथ काम करने वाले ब्राउज़र पर लागू होता है. |
fedcm_auto |
किसी ऐसे उपयोगकर्ता के लिए अपने-आप साइन इन होने की सुविधा चालू करना जिसका मौजूदा सेशन चालू है और जिसने FedCM One Tap का इस्तेमाल करके क्रेडेंशियल शेयर करने की सहमति पहले ही दे दी है. यह सिर्फ़ FedCM के साथ काम करने वाले ब्राउज़र पर लागू होता है. |
user_1tap |
मौजूदा सेशन वाले किसी उपयोगकर्ता ने सहमति देने और क्रेडेंशियल शेयर करने के लिए, One Tap 'इसके तौर पर जारी रखें' बटन दबाया. यह सुविधा, सिर्फ़ Chrome v75 और उसके बाद के वर्शन पर उपलब्ध है. |
user_2tap |
किसी ऐसे उपयोगकर्ता ने One Tap 'इसके तौर पर जारी रखें' बटन दबाया जिसका कोई मौजूदा सेशन नहीं है. इसके बाद, उसने कोई खाता चुना और फिर सहमति देने और क्रेडेंशियल शेयर करने के लिए, पॉप-अप विंडो में मौजूद पुष्टि करें बटन दबाया. यह सुविधा, Chromium पर आधारित ब्राउज़र के अलावा अन्य ब्राउज़र पर लागू होती है. |
itp |
जिस उपयोगकर्ता ने पहले सहमति दी थी उसने ITP ब्राउज़र पर One Tap सुविधा का इस्तेमाल किया हो. |
itp_confirm |
जिस उपयोगकर्ता ने सहमति नहीं दी थी उसने ITP ब्राउज़र पर One Tap सुविधा चालू की और सहमति देने के लिए 'जारी रखें' बटन दबाया. साथ ही, क्रेडेंशियल शेयर किए. |
btn |
ऐसा उपयोगकर्ता जिसने पहले सहमति दी थी. उसने 'Google से साइन इन करें' बटन दबाया और क्रेडेंशियल शेयर करने के लिए, 'कोई खाता चुनें' से कोई Google खाता चुना. |
btn_confirm |
जिस उपयोगकर्ता ने सहमति नहीं दी थी उसने 'Google से साइन इन करें' बटन दबाया. इसके बाद, उसने सहमति देने और क्रेडेंशियल शेयर करने के लिए 'जारी रखें' बटन दबाया. |
राज्य
इस पैरामीटर को सिर्फ़ तब तय किया जाता है, जब उपयोगकर्ता साइन इन करने के लिए, 'Google से साइन इन करें' बटन पर क्लिक करता है. साथ ही, क्लिक किए गए बटन का data-state एट्रिब्यूट तय किया गया हो. इस फ़ील्ड की वैल्यू वही होती है जो आपने बटन के data-state एट्रिब्यूट में दी है.
एक ही पेज पर, 'Google से साइन इन करें' बटन के कई वर्शन रेंडर किए जा सकते हैं. इसलिए, हर बटन को एक यूनीक स्ट्रिंग असाइन की जा सकती है. इसलिए, इस state
पैरामीटर का इस्तेमाल करके यह पता लगाया जा सकता है कि उपयोगकर्ता ने साइन इन करने के लिए किस बटन पर क्लिक किया.
पासवर्ड क्रेडेंशियल हैंडलर एंडपॉइंट
पासवर्ड क्रेडेंशियल हैंडलर एंडपॉइंट, पासवर्ड क्रेडेंशियल को प्रोसेस करता है. इन्हें डिवाइस में पहले से मौजूद क्रेडेंशियल मैनेजर से वापस पाया जाता है.
एचटीटीपी POST अनुरोध में यह जानकारी शामिल होती है:
| फ़ॉर्मैट | नाम | ब्यौरा |
|---|---|---|
| कुकी | g_csrf_token |
यह एक रैंडम स्ट्रिंग होती है. यह लॉगिन एंडपॉइंट के हर अनुरोध के साथ बदलती है. इसे data-native_login_uri में तय किया जाता है. यह g_csrf_token अनुरोध पैरामीटर में मौजूद वैल्यू से मेल खानी चाहिए. |
| अनुरोध पैरामीटर | g_csrf_token |
यह एक रैंडम स्ट्रिंग होती है. यह data-native_login_uri में बताए गए लॉगिन एंडपॉइंट के हर अनुरोध के साथ बदलती है. यह g_csrf_token कुकी की वैल्यू से मेल खानी चाहिए. |
| अनुरोध पैरामीटर | email |
यह आईडी टोकन, Google जारी करता है. |
| अनुरोध पैरामीटर | password |
क्रेडेंशियल कैसे चुना जाता है. |