इस रेफ़रंस पेज पर, 'Google से साइन इन करें' JavaScript API के बारे में बताया गया है. इसका इस्तेमाल, वेब पेजों पर 'Google से साइन इन करें' बटन या वन टैप प्रॉम्प्ट दिखाने के लिए किया जाता है.
तरीका: google.accounts.id.initialize
google.accounts.id.initialize वाला तरीका, कॉन्फ़िगरेशन ऑब्जेक्ट के आधार पर, 'Google से साइन इन करें' क्लाइंट को शुरू करता है. इस तरीके का उदाहरण देने वाला यह कोड देखें:
google.accounts.id.initialize(IdConfiguration)
यहां दिए गए कोड के उदाहरण में, onload फ़ंक्शन के साथ google.accounts.id.initialize तरीके को लागू किया गया है:
<script>
window.onload = function () {
google.accounts.id.initialize({
client_id: 'YOUR_GOOGLE_CLIENT_ID',
callback: handleCredentialResponse
});
google.accounts.id.prompt();
};
</script>
google.accounts.id.initialize मेथड, 'Google से साइन इन करें' क्लाइंट इंस्टेंस बनाता है. इसका इस्तेमाल, उसी वेब पेज के सभी मॉड्यूल में किया जा सकता है.
- आपको
google.accounts.id.initializeतरीके को सिर्फ़ एक बार कॉल करना होगा. भले ही, आपने एक ही वेब पेज पर कई मॉड्यूल (जैसे, One Tap, आपकी दिलचस्पी के हिसाब से बनाया गया बटन, रद्द करना वगैरह) इस्तेमाल किए हों. - अगर
google.accounts.id.initializeतरीके को कई बार कॉल किया जाता है, तो सिर्फ़ आखिरी कॉल के कॉन्फ़िगरेशन को याद रखा जाता है और इस्तेमाल किया जाता है.
जब भी google.accounts.id.initialize तरीके को कॉल किया जाता है, तब कॉन्फ़िगरेशन रीसेट हो जाते हैं. साथ ही, उसी वेब पेज पर मौजूद अन्य सभी तरीके, तुरंत नए कॉन्फ़िगरेशन का इस्तेमाल करते हैं.
डेटा टाइप: IdConfiguration
यहां दी गई टेबल में, IdConfiguration डेटा टाइप के फ़ील्ड और जानकारी दी गई है:
| फ़ील्ड | |
|---|---|
client_id |
आपके ऐप्लिकेशन का क्लाइंट आईडी |
color_scheme |
One Tap प्रॉम्प्ट पर लागू की गई कलर स्कीम. |
auto_select |
इससे अपने-आप चुनने की सुविधा चालू हो जाती है. |
callback |
JavaScript फ़ंक्शन, जो आईडी टोकन मैनेज करता है. Google One Tap और
'Google से साइन इन करें' बटन popup यूएक्स मोड, इस
एट्रिब्यूट का इस्तेमाल करते हैं. |
login_uri |
आपके लॉगिन एंडपॉइंट का यूआरएल. 'Google से साइन इन करें' बटन
redirect UX मोड इस एट्रिब्यूट का इस्तेमाल करता है. |
native_callback |
पासवर्ड क्रेडेंशियल को मैनेज करने वाला JavaScript फ़ंक्शन. |
cancel_on_tap_outside |
अगर उपयोगकर्ता प्रॉम्प्ट के बाहर क्लिक करता है, तो प्रॉम्प्ट रद्द हो जाता है. |
prompt_parent_id |
One Tap प्रॉम्प्ट कंटेनर एलिमेंट का डीओएम आईडी |
nonce |
आईडी टोकन के लिए रैंडम स्ट्रिंग |
essential_claims |
Google से मिले आईडी टोकन में शामिल किए जाने वाले अतिरिक्त दावे. |
context |
One Tap प्रॉम्प्ट में मौजूद टाइटल और शब्द |
state_cookie_domain |
अगर आपको पैरंट डोमेन और उसके सबडोमेन में One Tap को कॉल करना है, तो इस फ़ील्ड में पैरंट डोमेन की जानकारी डालें. इससे, शेयर की गई एक ही कुकी का इस्तेमाल किया जा सकेगा. |
ux_mode |
'Google से साइन इन करें' बटन का उपयोगकर्ता अनुभव (UX) फ़्लो |
allowed_parent_origin |
ऐसे ऑरिजिन जिन्हें इंटरमीडिएट iframe को एम्बेड करने की अनुमति है. अगर यह फ़ील्ड मौजूद है, तो One Tap को इंटरमीडिएट iframe मोड में चलाया जाता है. |
intermediate_iframe_close_callback |
जब उपयोगकर्ता मैन्युअल तरीके से One Tap को बंद करते हैं, तो यह डिफ़ॉल्ट इंटरमीडिएट iframe के व्यवहार को बदल देता है. |
itp_support |
आईटीपी ब्राउज़र पर, One Tap के अपग्रेड किए गए उपयोगकर्ता अनुभव को चालू करता है. |
login_hint |
उपयोगकर्ता के बारे में जानकारी देकर, खाता चुनने की प्रोसेस को स्किप करें. |
hd |
डोमेन के हिसाब से, खाता चुनने की सुविधा को सीमित करें. |
use_fedcm_for_prompt |
ब्राउज़र को उपयोगकर्ता के साइन-इन के अनुरोधों को कंट्रोल करने और आपकी वेबसाइट और Google के बीच साइन-इन फ़्लो को मैनेज करने की अनुमति दें. |
use_fedcm_for_button |
इस फ़ील्ड से यह तय होता है कि Chrome पर FedCM बटन उपयोगकर्ता अनुभव का इस्तेमाल किया जाना चाहिए या नहीं. यह सुविधा, डेस्कटॉप के लिए Chrome 125 और इसके बाद के वर्शन और Android के लिए Chrome 128 और इसके बाद के वर्शन पर उपलब्ध है. डिफ़ॉल्ट रूप से, false पर सेट होता है. |
button_auto_select |
FedCM बटन फ़्लो के लिए, अपने-आप चुनने का विकल्प चालू करना है या नहीं. अगर यह सुविधा चालू है, तो Google सेशन चालू होने पर, लौटने वाले उपयोगकर्ता अपने-आप साइन इन हो जाएंगे. इसके लिए, उन्हें खाता चुनने की सुविधा का प्रॉम्प्ट नहीं दिखेगा. डिफ़ॉल्ट वैल्यू false है. |
client_id
यह फ़ील्ड आपके ऐप्लिकेशन का क्लाइंट आईडी होता है. इसे Google Cloud Console में बनाया जाता है और वहीं से इसे ढूंढा जा सकता है. ज़्यादा जानकारी के लिए, यहां दी गई टेबल देखें:
| टाइप | ज़रूरी है | उदाहरण |
|---|---|---|
| स्ट्रिंग | हां | client_id: "CLIENT_ID.apps.googleusercontent.com" |
color_scheme
इस फ़ील्ड में, One Tap प्रॉम्प्ट पर लागू की गई कलर स्कीम की जानकारी होती है. ज़्यादा जानकारी के लिए, यहां दी गई टेबल देखें:
| टाइप | ज़रूरी है | उदाहरण |
|---|---|---|
| स्ट्रिंग | ज़रूरी नहीं. यह डिफ़ॉल्ट रूप से, उपयोगकर्ताओं के सिस्टम की डिफ़ॉल्ट कलर स्कीम पर सेट होता है. | color_scheme: "dark" |
यहां दी गई टेबल में, उपलब्ध कलर स्कीम और उनके बारे में जानकारी दी गई है.
| कलर स्कीम | |
|---|---|
default |
उपयोगकर्ता के सिस्टम की डिफ़ॉल्ट कलर स्कीम लागू करें. उपयोगकर्ता की पसंद के हिसाब से, स्कीम हल्की या गहरे रंग की हो सकती है. |
light |
हल्के रंग वाली कलर स्कीम लागू करें. |
dark |
गहरे रंग वाली कलर स्कीम लागू करना. |
auto_select
इस फ़ील्ड से यह तय होता है कि उपयोगकर्ता के इंटरैक्शन के बिना, आईडी टोकन अपने-आप दिखाया जाए या नहीं. ऐसा तब होता है, जब सिर्फ़ एक Google सेशन ने आपके ऐप्लिकेशन को पहले अनुमति दी हो. डिफ़ॉल्ट वैल्यूfalse है ज़्यादा जानकारी के लिए, नीचे दी गई टेबल देखें:
| टाइप | ज़रूरी है | उदाहरण |
|---|---|---|
| बूलियन | वैकल्पिक | auto_select: true |
कॉलबैक
यह फ़ील्ड, JavaScript फ़ंक्शन है. यह वन टैप प्रॉम्प्ट या पॉप-अप विंडो से मिले आईडी टोकन को मैनेज करता है. अगर Google One Tap या 'Google से साइन इन करें' बटन के popup यूएक्स मोड का इस्तेमाल किया जाता है, तो यह एट्रिब्यूट ज़रूरी है. ज़्यादा जानकारी के लिए, यहां दी गई टेबल देखें:
| टाइप | ज़रूरी है | उदाहरण |
|---|---|---|
| फ़ंक्शन | One Tap और popup यूएक्स मोड के लिए ज़रूरी है |
callback: handleResponse |
login_uri
यह एट्रिब्यूट, आपके लॉगिन एंडपॉइंट का यूआरआई होता है.
यह वैल्यू, OAuth 2.0 क्लाइंट के लिए अनुमति पा चुके उन रीडायरेक्ट यूआरआई में से किसी एक से पूरी तरह मैच होनी चाहिए जिन्हें आपने Google Cloud Console में कॉन्फ़िगर किया है. साथ ही, यह वैल्यू रीडायरेक्ट यूआरआई की पुष्टि करने के हमारे नियमों के मुताबिक होनी चाहिए.
अगर मौजूदा पेज आपका लॉगिन पेज है, तो इस एट्रिब्यूट को छोड़ा जा सकता है. ऐसे में, क्रेडेंशियल को डिफ़ॉल्ट रूप से इस पेज पर पोस्ट किया जाता है.
जब कोई उपयोगकर्ता 'Google से साइन इन करें' बटन पर क्लिक करता है और रीडायरेक्ट यूएक्स मोड का इस्तेमाल किया जाता है, तो आईडी टोकन क्रेडेंशियल रिस्पॉन्स आपके लॉगिन एंडपॉइंट पर पोस्ट किया जाता है.
ज़्यादा जानकारी के लिए, यहां दी गई टेबल देखें:
| टाइप | वैकल्पिक | उदाहरण |
|---|---|---|
| URL | यह डिफ़ॉल्ट रूप से, मौजूदा पेज के यूआरआई या आपकी तय की गई वैल्यू पर सेट होता है. इसका इस्तेमाल सिर्फ़ तब किया जाता है, जब ux_mode: "redirect" सेट किया गया हो. |
login_uri: "https://www.example.com/login" |
यह ज़रूरी है कि आपका लॉगिन एंडपॉइंट, उन पोस्ट अनुरोधों को मैनेज कर सके जिनमें बॉडी में आईडी टोकन वैल्यू के साथ credential पैरामीटर शामिल हो. select_by को login_uri या data-login_uri के लिए, एचटीटीपी POST अनुरोधों में शामिल नहीं किया जाता है. इसे सिर्फ़ JavaScript callback फ़ंक्शन को पास किए गए CredentialResponse ऑब्जेक्ट में दिखाया जाता है.
native_callback
यह फ़ील्ड, उस JavaScript फ़ंक्शन का नाम है जो ब्राउज़र में पहले से मौजूद Credential Manager से मिले पासवर्ड क्रेडेंशियल को मैनेज करता है. ज़्यादा जानकारी के लिए, यहां दी गई टेबल देखें:
| टाइप | ज़रूरी है | उदाहरण |
|---|---|---|
| फ़ंक्शन | वैकल्पिक | native_callback: handleResponse |
cancel_on_tap_outside
इस फ़ील्ड से यह सेट किया जाता है कि अगर कोई उपयोगकर्ता प्रॉम्प्ट के बाहर क्लिक करता है, तो One Tap अनुरोध को रद्द करना है या नहीं. डिफ़ॉल्ट वैल्यूtrue है वैल्यू को false पर सेट करके,
इसे बंद किया जा सकता है. ज़्यादा जानकारी के लिए, यहां दी गई टेबल देखें:
| टाइप | ज़रूरी है | उदाहरण |
|---|---|---|
| बूलियन | वैकल्पिक | cancel_on_tap_outside: false |
prompt_parent_id
यह एट्रिब्यूट, कंटेनर एलिमेंट का डीओएम आईडी सेट करता है. अगर इसे सेट नहीं किया जाता है, तो One Tap प्रॉम्प्ट, विंडो के सबसे ऊपर दाएं कोने में दिखता है. ज़्यादा जानकारी के लिए, यहां दी गई टेबल देखें:
| टाइप | ज़रूरी है | उदाहरण |
|---|---|---|
| स्ट्रिंग | वैकल्पिक | prompt_parent_id: 'parent_id' |
नॉन्स
यह फ़ील्ड एक रैंडम स्ट्रिंग है. इसका इस्तेमाल आईडी टोकन, रीप्ले अटैक को रोकने के लिए करता है. ज़्यादा जानकारी के लिए, यहां दी गई टेबल देखें:
| टाइप | ज़रूरी है | उदाहरण |
|---|---|---|
| स्ट्रिंग | वैकल्पिक | nonce: "biaqbm70g23" |
नॉन्स की लंबाई, आपके एनवायरमेंट में JWT के लिए तय किए गए ज़्यादा से ज़्यादा साइज़ के हिसाब से सीमित होती है. साथ ही, यह अलग-अलग ब्राउज़र और सर्वर के एचटीटीपी साइज़ की सीमाओं के हिसाब से भी सीमित होती है.
essential_claims
यह फ़ील्ड एक स्ट्रिंग है. इसका इस्तेमाल, Google से मिले आईडी टोकन में अतिरिक्त दावे शामिल करने का अनुरोध करने के लिए किया जाता है. Google जिन दावों को स्वीकार करता है उनकी पूरी सूची देखने के लिए, स्वीकार किए जाने वाले दावे देखें.
ज़्यादा जानकारी के लिए, यहां दी गई टेबल देखें:
| टाइप | ज़रूरी है | उदाहरण |
|---|---|---|
| स्ट्रिंग | वैकल्पिक | essential_claims: "auth_time, amr" |
कॉन्टेक्स्ट
इस फ़ील्ड से, One Tap प्रॉम्प्ट में दिखने वाले टाइटल और मैसेज के टेक्स्ट में बदलाव होता है. हालांकि, आईटीपी ब्राउज़र पर इसका कोई असर नहीं पड़ता. डिफ़ॉल्ट रूप से, यह signin पर सेट होता है.
ज़्यादा जानकारी के लिए, यहां दी गई टेबल देखें:
| टाइप | ज़रूरी है | उदाहरण |
|---|---|---|
| स्ट्रिंग | वैकल्पिक | context: "use" |
यहां दी गई टेबल में, उपलब्ध सभी कॉन्टेक्स्ट और उनके ब्यौरे दिए गए हैं:
| कॉन्टेक्स्ट | |
|---|---|
signin |
"इसमें साइन इन करें" |
signup |
"साइन अप करें" |
use |
"इस्तेमाल करें" |
state_cookie_domain
अगर आपको पैरंट डोमेन और उसके सबडोमेन में One Tap दिखाना है, तो इस फ़ील्ड में पैरंट डोमेन डालें, ताकि शेयर की गई स्थिति वाली एक कुकी का इस्तेमाल किया जा सके. ज़्यादा जानकारी के लिए, यहां दी गई टेबल देखें:
| टाइप | ज़रूरी है | उदाहरण |
|---|---|---|
| स्ट्रिंग | वैकल्पिक | state_cookie_domain: "example.com" |
ux_mode
इस फ़ील्ड का इस्तेमाल करके, 'Google से साइन इन करें' बटन के लिए इस्तेमाल किए जाने वाले यूएक्स फ़्लो को सेट करें. डिफ़ॉल्ट वैल्यू popup होती है. इस एट्रिब्यूट का OneTap यूएक्स पर कोई असर नहीं पड़ता. ज़्यादा जानकारी के लिए, यहां दी गई टेबल देखें:
| टाइप | ज़रूरी है | उदाहरण |
|---|---|---|
| स्ट्रिंग | वैकल्पिक | ux_mode: "redirect" |
यहां दी गई टेबल में, उपलब्ध यूएक्स मोड और उनके बारे में जानकारी दी गई है.
| UX मोड | |
|---|---|
popup |
पॉप-अप विंडो में साइन-इन यूएक्स फ़्लो को पूरा करता है. |
redirect |
पूरे पेज को रीडायरेक्ट करके, साइन-इन यूएक्स फ़्लो को पूरा करता है. |
allowed_parent_origin
ऐसे ऑरिजिन जिन्हें इंटरमीडिएट iframe को एम्बेड करने की अनुमति है. अगर यह फ़ील्ड मौजूद है, तो One Tap, इंटरमीडिएट iframe मोड में चलता है. ज़्यादा जानकारी के लिए, यहां दी गई टेबल देखें:
| टाइप | ज़रूरी है | उदाहरण |
|---|---|---|
| स्ट्रिंग या स्ट्रिंग अरे | वैकल्पिक | allowed_parent_origin: "https://example.com" |
यहां दी गई टेबल में, इस्तेमाल की जा सकने वाली वैल्यू टाइप और उनके ब्यौरे दिए गए हैं.
| वैल्यू टाइप | ||
|---|---|---|
string |
एक डोमेन यूआरआई. | "https://example.com" |
string array |
डोमेन यूआरआई का कलेक्शन. | ["https://news.example.com", "https://local.example.com"] |
वाइल्डकार्ड प्रीफ़िक्स भी इस्तेमाल किए जा सकते हैं. उदाहरण के लिए, "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"को अमान्य माना जाता है.
अगर allowed_parent_origin फ़ील्ड की वैल्यू अमान्य है, तो इंटरमीडिएट iframe मोड का वन टैप शुरू नहीं हो पाएगा और रुक जाएगा.
intermediate_iframe_close_callback
जब उपयोगकर्ता One Tap के यूज़र इंटरफ़ेस (यूआई) में 'X' बटन पर टैप करके, One Tap को मैन्युअल तरीके से बंद करते हैं, तब यह इंटरमीडिएट iframe के डिफ़ॉल्ट व्यवहार को बदल देता है. डिफ़ॉल्ट रूप से, इंटरमीडिएट iframe को डीओएम से तुरंत हटा दिया जाता है.
intermediate_iframe_close_callback फ़ील्ड सिर्फ़ इंटरमीडिएट iframe मोड में लागू होता है. इसका असर सिर्फ़ इंटरमीडिएट iframe पर पड़ता है, न कि One Tap iframe पर. कॉलबैक को शुरू करने से पहले, One Tap यूज़र इंटरफ़ेस (यूआई) को हटा दिया जाता है.
| टाइप | ज़रूरी है | उदाहरण |
|---|---|---|
| फ़ंक्शन | वैकल्पिक | intermediate_iframe_close_callback: logBeforeClose |
itp_support
इस फ़ील्ड से यह तय होता है कि इंटेलिजेंट ट्रैकिंग प्रिवेंशन (आईटीपी) की सुविधा के साथ काम करने वाले ब्राउज़र पर, अपग्रेड किया गया One Tap यूएक्स चालू किया जाना चाहिए या नहीं. डिफ़ॉल्ट वैल्यू false है. ज़्यादा जानकारी के लिए, नीचे दी गई टेबल देखें:
| टाइप | ज़रूरी है | उदाहरण |
|---|---|---|
| बूलियन | वैकल्पिक | itp_support: false |
login_hint
अगर आपके ऐप्लिकेशन को पहले से पता है कि किस उपयोगकर्ता को साइन इन करना चाहिए, तो वह Google को लॉगिन करने का संकेत दे सकता है. अगर यह प्रोसेस पूरी हो जाती है, तो खाता चुनने की प्रोसेस को स्किप कर दिया जाता है. स्वीकार की जाने वाली वैल्यू: कोई ईमेल पता या आईडी टोकन के sub फ़ील्ड की वैल्यू.
ज़्यादा जानकारी के लिए, OpenID Connect के दस्तावेज़ में login_hint फ़ील्ड देखें.
| टाइप | ज़रूरी है | उदाहरण |
|---|---|---|
स्ट्रिंग, ईमेल पता या आईडी टोकन
sub फ़ील्ड की वैल्यू. |
वैकल्पिक | login_hint: 'elisa.beckett@gmail.com' |
hd
अगर किसी उपयोगकर्ता के पास एक से ज़्यादा खाते हैं और उसे सिर्फ़ अपने Workspace खाते से साइन-इन करना है, तो Google को डोमेन नेम का हिंट देने के लिए इसका इस्तेमाल करें. ऐसा होने पर, खाता चुनते समय दिखने वाले उपयोगकर्ता खाते, दिए गए डोमेन तक ही सीमित होते हैं.
वाइल्डकार्ड वैल्यू: *, उपयोगकर्ता को सिर्फ़ Workspace खाते उपलब्ध कराती है. साथ ही, खाता चुनते समय उपभोक्ता खातों (user@gmail.com) को शामिल नहीं करती.
ज़्यादा जानकारी के लिए, OpenID Connect के दस्तावेज़ में hd फ़ील्ड देखें.
| टाइप | ज़रूरी है | उदाहरण |
|---|---|---|
| स्ट्रिंग. पूरी तरह क्वालिफ़ाइड डोमेन नेम या *. | वैकल्पिक | hd: '*' |
use_fedcm_for_prompt
ब्राउज़र को उपयोगकर्ता के साइन-इन के अनुरोधों को कंट्रोल करने और आपकी वेबसाइट और Google के बीच साइन-इन फ़्लो को मैनेज करने की अनुमति दें. डिफ़ॉल्ट तौर पर, यह 'गलत' पर सेट होती है. ज़्यादा जानकारी के लिए, FedCM पर माइग्रेट करें पेज देखें.
| टाइप | ज़रूरी है | उदाहरण |
|---|---|---|
| बूलियन | बहिष्कृत | use_fedcm_for_prompt: true |
use_fedcm_for_button
इस फ़ील्ड से यह तय होता है कि Chrome (डेस्कटॉप M125 और इसके बाद के वर्शन और Android M128 और इसके बाद के वर्शन) पर, FedCM बटन उपयोगकर्ता अनुभव का इस्तेमाल किया जाना चाहिए या नहीं. डिफ़ॉल्ट रूप से, false पर सेट होता है. ज़्यादा जानकारी के लिए, नीचे दी गई टेबल देखें:
| टाइप | ज़रूरी है | उदाहरण |
|---|---|---|
| बूलियन | वैकल्पिक | use_fedcm_for_button: true |
button_auto_select
इस फ़ील्ड से यह तय होता है कि FedCM बटन फ़्लो के लिए, अपने-आप चुनने का विकल्प चालू करना है या नहीं. अगर यह सुविधा चालू है, तो Google सेशन में पहले से साइन इन कर चुके लौटने वाले उपयोगकर्ता, अपने-आप साइन इन हो जाएंगे. उन्हें खाता चुनने की सुविधा वाला प्रॉम्प्ट नहीं दिखेगा. डिफ़ॉल्ट रूप से, यह false पर सेट होता है. ऑप्ट-इन लॉन्च के दौरान, आपको बटन की मदद से ऑटो-साइन-इन की सुविधा को साफ़ तौर पर चालू करना होगा. ज़्यादा जानकारी के लिए, यहां दी गई टेबल देखें:
| टाइप | ज़रूरी है | उदाहरण |
|---|---|---|
| बूलियन | वैकल्पिक | button_auto_select: true |
तरीका: google.accounts.id.prompt
google.accounts.id.prompt मेथड, initialize() मेथड को शुरू करने के बाद, One Tap प्रॉम्प्ट या ब्राउज़र में पहले से मौजूद क्रेडेंशियल मैनेजर को दिखाता है.
इस तरीके के लिए, यहां दिया गया कोड देखें:
google.accounts.id.prompt(/**
@type{(function(!PromptMomentNotification):void)=} */ momentListener)
आम तौर पर, पेज लोड होने पर prompt() मेथड को कॉल किया जाता है. सेशन की स्थिति और Google की ओर से उपयोगकर्ता की सेटिंग की वजह से, हो सकता है कि One Tap प्रॉम्प्ट का यूज़र इंटरफ़ेस (यूआई) न दिखे. अलग-अलग स्थितियों में यूज़र इंटरफ़ेस (यूआई) की स्थिति के बारे में सूचना पाने के लिए, यूज़र इंटरफ़ेस (यूआई) की स्थिति की सूचनाएं पाने के लिए कोई फ़ंक्शन पास करें.
सूचनाएं इन मौकों पर भेजी जाती हैं:
- विज्ञापन दिखाने का समय: यह
prompt()तरीके को कॉल करने के बाद होता है. सूचना में एक बूलियन वैल्यू होती है, जिससे पता चलता है कि यूज़र इंटरफ़ेस (यूआई) दिख रहा है या नहीं. स्किप किया गया मोमेंट: ऐसा तब होता है, जब One Tap प्रॉम्प्ट को अपने-आप या मैन्युअल तरीके से रद्द कर दिया जाता है. इसके अलावा, ऐसा तब भी होता है, जब Google क्रेडेंशियल जारी नहीं कर पाता. जैसे, जब चुने गए सेशन में Google से साइन आउट कर दिया गया हो.
ऐसे मामलों में, हमारा सुझाव है कि आप पहचान की पुष्टि करने वाली अन्य सेवा देने वाली कंपनियों का इस्तेमाल करें.
खारिज किया गया: ऐसा तब होता है, जब Google क्रेडेंशियल को वापस पा लेता है या कोई उपयोगकर्ता क्रेडेंशियल वापस पाने की प्रोसेस को रोकना चाहता है. उदाहरण के लिए, जब उपयोगकर्ता आपके लॉगिन डायलॉग में अपना उपयोगकर्ता नाम और पासवर्ड डालना शुरू करता है, तो वन टैप प्रॉम्प्ट को बंद करने और खारिज किए गए पल को ट्रिगर करने के लिए,
google.accounts.id.cancel()तरीके को कॉल किया जा सकता है.
यहां दिए गए कोड के उदाहरण में, स्किप किए गए पल को लागू किया गया है:
<script>
window.onload = function () {
google.accounts.id.initialize(...);
google.accounts.id.prompt((notification) => {
if (notification.isNotDisplayed() || notification.isSkippedMoment()) {
// continue with another identity provider.
}
});
};
</script>
डेटा टाइप: PromptMomentNotification
यहां दी गई टेबल में, PromptMomentNotification डेटा टाइप के तरीकों और ब्यौरे की सूची दी गई है:
| तरीका | |
|---|---|
isDisplayMoment() |
अगर One Tap प्रॉम्प्ट दिखता है, तो true दिखाता है.ध्यान दें: FedCM चालू होने पर, यह सूचना नहीं दिखती. ज़्यादा जानकारी के लिए, FedCM पर माइग्रेट करें पेज देखें. |
isDisplayed() |
अगर मोमेंट टाइप PromptMoment.DISPLAY है और One Tap प्रॉम्प्ट दिखता है, तो true दिखाता है.ध्यान दें: FedCM चालू होने पर, यह सूचना नहीं दिखती. ज़्यादा जानकारी के लिए, FedCM पर माइग्रेट करें पेज देखें. |
isNotDisplayed() |
अगर मोमेंट टाइप PromptMoment.DISPLAY है और One Tap प्रॉम्प्ट नहीं दिखता है, तो true दिखाता है.ध्यान दें: FedCM चालू होने पर, यह सूचना नहीं दिखती. ज़्यादा जानकारी के लिए, FedCM पर माइग्रेट करें पेज देखें. |
getNotDisplayedReason() |
यूज़र इंटरफ़ेस (यूआई) न दिखने की वजह के बारे में पूरी जानकारी. ये वैल्यू हो सकती हैं:
|
isSkippedMoment() |
अगर मोमेंट टाइप PromptMoment.SKIPPEDहै, तो true दिखाता है
ध्यान दें: FedCM चालू होने पर, यह तरीका कुछ हद तक काम करता है.
खास तौर पर, इसमें user_cancel की वजह से स्किप किए गए आइटम की जानकारी नहीं दी जाती. ज़्यादा जानकारी के लिए,
FedCM पर माइग्रेट करें
पेज देखें.
|
getSkippedReason() |
स्किप किए गए पल की वजह के बारे में ज़्यादा जानकारी. ये वैल्यू हो सकती हैं:
user_cancel को स्किप करने की वजह नहीं बताई जा सकती. ज़्यादा जानकारी के लिए, FedCM पर माइग्रेट करें पेज देखें.
|
isDismissedMoment() |
अगर मोमेंट टाइप PromptMoment.DISMISSED है, तो true दिखाता है.ध्यान दें: FedCM चालू होने पर, यह तरीका पूरी तरह से काम करता है. ज़्यादा जानकारी के लिए, FedCM पर माइग्रेट करें पेज देखें. |
getDismissedReason() |
खारिज करने की वजह के बारे में ज़्यादा जानकारी. ये वैल्यू हो सकती हैं:
|
getMomentType() |
मोमेंट टाइप के लिए स्ट्रिंग दिखाएं. ये वैल्यू हो सकती हैं:
|
डेटा टाइप: CredentialResponse
callback फ़ंक्शन को शुरू करने पर, CredentialResponse ऑब्जेक्ट को पैरामीटर के तौर पर पास किया जाता है. यहां दी गई टेबल में, क्रेडेंशियल रिस्पॉन्स ऑब्जेक्ट में शामिल फ़ील्ड की सूची दी गई है:
| फ़ील्ड | |
|---|---|
credential |
Google की ओर से जारी किया गया एन्कोड किया गया JWT आईडी टोकन. |
select_by |
उपयोगकर्ता ने कैसे साइन इन किया. |
state |
यह फ़ील्ड सिर्फ़ तब तय होता है, जब उपयोगकर्ता साइन इन करने के लिए, 'Google से साइन इन करें' बटन पर क्लिक करता है. साथ ही, बटन का state एट्रिब्यूट तय किया गया हो. |
क्रेडेंशियल
यह फ़ील्ड, base64-कोड में बदले गए JSON वेब टोकन (JWT) स्ट्रिंग के तौर पर आईडी टोकन है.
डिकोड करने पर, JWT इस उदाहरण की तरह दिखता है:
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 Google Workspace email address "auth_time": 1748875426, "amr": ["mfa", "pwd", "tel"], "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": "Elisa", "family_name": "Beckett", "iat": 1596474000, // Unix timestamp of the assertion creation time "exp": 1596477600, // Unix timestamp of the assertion expiration time "jti": "abc161803398874def" }
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_verfied भी सही हो सकता है, क्योंकि Google ने Google खाता बनाते समय उपयोगकर्ता की पुष्टि की थी. हालांकि, हो सकता है कि तीसरे पक्ष के ईमेल खाते का मालिकाना हक बदल गया हो.
exp फ़ील्ड से पता चलता है कि सर्वर साइड पर टोकन की पुष्टि करने की समयसीमा कब खत्म होगी. 'Google से साइन इन करें' सुविधा से मिले आईडी टोकन के लिए, यह समयसीमा एक घंटे की होती है. आपको समयसीमा खत्म होने से पहले, टोकन की पुष्टि करनी होगी. सेशन मैनेज करने के लिए, exp का इस्तेमाल न करें. आईडी टोकन की समयसीमा खत्म होने का मतलब यह नहीं है कि उपयोगकर्ता ने साइन आउट कर दिया है. आपके ऐप्लिकेशन की ज़िम्मेदारी है कि वह उपयोगकर्ताओं के सेशन को मैनेज करे.
select_by
यहां दी गई टेबल में, select_by फ़ील्ड के लिए संभावित वैल्यू दी गई हैं. वैल्यू सेट करने के लिए, सेशन और सहमति की स्थिति के साथ इस्तेमाल किए गए बटन के टाइप का इस्तेमाल किया जाता है,
उपयोगकर्ता ने One Tap या 'Google से साइन इन करें' बटन दबाया हो या टचलेस अपने-आप साइन इन होने की सुविधा का इस्तेमाल किया हो.
कोई मौजूदा सेशन मिला या उपयोगकर्ता ने नया सेशन शुरू करने के लिए, कोई Google खाता चुना और उसमें साइन-इन किया.
आपके ऐप्लिकेशन के साथ आईडी टोकन क्रेडेंशियल शेयर करने से पहले, उपयोगकर्ता को इनमें से कोई एक काम करना होगा
- क्रेडेंशियल शेयर करने की सहमति देने के लिए, 'पुष्टि करें' बटन दबाया हो या
- पहले सहमति दी थी और Google खाता चुनने के लिए, 'कोई खाता चुनें' सुविधा का इस्तेमाल किया था.
इस फ़ील्ड की वैल्यू, इनमें से किसी एक टाइप पर सेट होती है,
| वैल्यू | ब्यौरा |
|---|---|
auto |
किसी मौजूदा सेशन वाले उपयोगकर्ता के लिए, अपने-आप साइन इन होने की सुविधा. इस उपयोगकर्ता ने क्रेडेंशियल शेयर करने की सहमति पहले ही दे दी थी. यह सिर्फ़ उन ब्राउज़र पर लागू होता है जो FedCM के साथ काम नहीं करते. |
user |
मौजूदा सेशन वाले किसी उपयोगकर्ता ने क्रेडेंशियल शेयर करने के लिए, One Tap के 'इस तौर पर जारी रखें' बटन को दबाया. इस उपयोगकर्ता ने पहले ही सहमति दे दी थी. यह सिर्फ़ उन ब्राउज़र पर लागू होता है जो FedCM के साथ काम नहीं करते. |
fedcm |
उपयोगकर्ता ने FedCM का इस्तेमाल करके क्रेडेंशियल शेयर करने के लिए, One Tap के 'इस तौर पर जारी रखें' बटन को दबाया. यह सिर्फ़ उन ब्राउज़र पर लागू होता है जो FedCM के साथ काम करते हैं. |
fedcm_auto |
किसी मौजूदा सेशन वाले उपयोगकर्ता का अपने-आप साइन इन होने की सुविधा. इस उपयोगकर्ता ने पहले ही FedCM One Tap का इस्तेमाल करके, क्रेडेंशियल शेयर करने की सहमति दी थी. यह सिर्फ़ उन ब्राउज़र पर लागू होता है जिनमें FedCM इस्तेमाल किया जा सकता है. |
user_1tap |
मौजूदा सेशन वाले किसी उपयोगकर्ता ने सहमति देने और क्रेडेंशियल शेयर करने के लिए, One Tap के 'इस तौर पर जारी रखें' बटन को दबाया. यह सिर्फ़ Chrome के वर्शन 75 और इसके बाद के वर्शन पर लागू होता है. |
user_2tap |
किसी ऐसे उपयोगकर्ता ने One Tap के 'इस तौर पर जारी रखें' बटन को दबाया जिसका कोई मौजूदा सेशन नहीं है. इसके बाद, उसने खाता चुनने के लिए, पॉप-अप विंडो में 'पुष्टि करें' बटन को दबाया, ताकि सहमति दी जा सके और क्रेडेंशियल शेयर किए जा सकें. यह Chromium पर आधारित नहीं होने वाले ब्राउज़र पर लागू होता है. |
itp |
पहले सहमति दे चुके किसी उपयोगकर्ता ने ITP ब्राउज़र पर वन टैप को दबाया. |
itp_confirm |
सहमति न देने वाले किसी उपयोगकर्ता ने ITP ब्राउज़र पर वन टैप बटन दबाया और सहमति देने और क्रेडेंशियल शेयर करने के लिए, 'जारी रखें' बटन दबाया. |
btn |
जिस उपयोगकर्ता ने पहले ही सहमति दे दी थी उसने 'Google से साइन इन करें' बटन दबाया और क्रेडेंशियल शेयर करने के लिए, 'कोई खाता चुनें' से Google खाता चुना. |
btn_confirm |
सहमति न देने वाले उपयोगकर्ता ने 'Google से साइन इन करें' बटन दबाया. इसके बाद, सहमति देने और क्रेडेंशियल शेयर करने के लिए, 'जारी रखें' बटन दबाया. |
राज्य
यह फ़ील्ड सिर्फ़ तब तय होता है, जब उपयोगकर्ता साइन इन करने के लिए, 'Google से साइन इन करें' बटन पर क्लिक करता है. साथ ही, क्लिक किए गए बटन के state एट्रिब्यूट की वैल्यू दी गई हो. इस फ़ील्ड की वैल्यू, बटन के state एट्रिब्यूट में बताई गई वैल्यू से मेल खाती है.
एक ही पेज पर, 'Google से साइन इन करें' सुविधा के कई बटन रेंडर किए जा सकते हैं. इसलिए, हर बटन को एक यूनीक स्ट्रिंग असाइन की जा सकती है. इसलिए, इस state फ़ील्ड का इस्तेमाल करके यह पता लगाया जा सकता है कि उपयोगकर्ता ने साइन इन करने के लिए किस बटन पर क्लिक किया.
तरीका: google.accounts.id.renderButton
google.accounts.id.renderButton मेथड, आपके वेब पेजों पर 'Google से साइन इन करें' बटन रेंडर करता है.
इस तरीके के लिए, यहां दिया गया कोड देखें:
google.accounts.id.renderButton(
/** @type{!HTMLElement} */ parent,
/** @type{!GsiButtonConfiguration} */ options
)
डेटा टाइप: GsiButtonConfiguration
यहां दी गई टेबल में, GsiButtonConfiguration डेटा टाइप के फ़ील्ड और जानकारी दी गई है:
| एट्रिब्यूट | |
|---|---|
type |
बटन का टाइप: आइकॉन या स्टैंडर्ड बटन. |
theme |
बटन की थीम. उदाहरण के लिए, filled_blue या filled_black. |
size |
बटन का साइज़. उदाहरण के लिए, छोटा या बड़ा. |
text |
बटन का टेक्स्ट. उदाहरण के लिए, "Google से साइन इन करें" या "Google से साइन अप करें". |
shape |
बटन का आकार. उदाहरण के लिए, रेक्टैंगल या सर्कल. |
logo_alignment |
Google के लोगो का अलाइनमेंट: बाईं ओर या बीच में. |
width |
पिक्सल में बटन की चौड़ाई. |
locale |
अगर इसे सेट किया जाता है, तो बटन की भाषा रेंडर हो जाती है. |
click_listener |
अगर यह फ़ंक्शन सेट है, तो 'Google से साइन इन करें' बटन पर क्लिक करने पर, इसे कॉल किया जाता है. |
state |
अगर यह स्ट्रिंग सेट की जाती है, तो यह आईडी टोकन के साथ दिखती है. |
एट्रिब्यूट टाइप
यहां दिए गए सेक्शन में, हर तरह के एट्रिब्यूट के बारे में जानकारी और एक उदाहरण दिया गया है.
टाइप
बटन का टाइप. डिफ़ॉल्ट वैल्यूstandard है
ज़्यादा जानकारी के लिए, यहां दी गई टेबल देखें:
| टाइप | ज़रूरी है | उदाहरण |
|---|---|---|
| स्ट्रिंग | हां | type: "icon" |
यहां दी गई टेबल में, उपलब्ध बटन टाइप और उनके ब्यौरे दिए गए हैं:
| टाइप | |
|---|---|
standard |
|
icon |
|
थीम
बटन की थीम. डिफ़ॉल्ट वैल्यूoutline है ज़्यादा जानकारी के लिए, नीचे दी गई टेबल देखें:
| टाइप | ज़रूरी है | उदाहरण |
|---|---|---|
| स्ट्रिंग | वैकल्पिक | theme: "filled_blue" |
यहां दी गई टेबल में, उपलब्ध थीम और उनके बारे में जानकारी दी गई है:
| थीम | सैंपल | विशेषताएं |
|---|---|---|
outline |
|
Fill: #FFFFFF Stroke: #747775 | 1px | inside Font: #1F1F1F | Roboto Medium | 14/20 Personalized: #1F1F1F | Roboto | Medium 12/14 | Regular 11/13 |
filled_blue |
|
Fill: #0B57D0 Stroke: #OB57D0 | 1px | inside Font: #FFFFFF | Google Sans Medium | 14/20 Personalized: #FFFFFF | Roboto | Medium 12/14 | Regular 11/13 |
filled_black |
|
फ़िल: #202124 स्ट्रोक: #OB57D0 | 1px | अंदर फ़ॉन्ट: #FFFFFF | Google Sans Medium | 14/20 पसंद के मुताबिक: #FFFFFF | Roboto | Medium 12/14 | Regular 11/13 |
outline_dark |
|
Fill: #131314 Stroke: #8E918F | 1px | inside Font: #FFFFFF | Google Sans Medium | 14/20 Personalized: #FFFFFF | Roboto | Medium 12/14 | Regular 11/13 |
साइज़
बटन का साइज़. डिफ़ॉल्ट वैल्यूlarge है ज़्यादा जानकारी के लिए, नीचे दी गई टेबल देखें:
| टाइप | ज़रूरी है | उदाहरण |
|---|---|---|
| स्ट्रिंग | वैकल्पिक | size: "small" |
यहां दी गई टेबल में, बटन के उपलब्ध साइज़ और उनके बारे में जानकारी दी गई है:
| साइज़ | |
|---|---|
large |
|
medium |
|
small |
|
टेक्स्ट
बटन का टेक्स्ट. डिफ़ॉल्ट वैल्यूsignin_with है अलग-अलग text एट्रिब्यूट वाले आइकॉन बटन के टेक्स्ट में, विज़ुअल के तौर पर कोई अंतर नहीं होता.
हालांकि, स्क्रीन की सुलभता के लिए टेक्स्ट को पढ़ने के दौरान ऐसा नहीं होता.
ज़्यादा जानकारी के लिए, यहां दी गई टेबल देखें:
| टाइप | ज़रूरी है | उदाहरण |
|---|---|---|
| स्ट्रिंग | वैकल्पिक | text: "signup_with" |
यहां दी गई टेबल में, बटन के लिए उपलब्ध सभी टेक्स्ट और उनकी जानकारी दी गई है:
| टेक्स्ट | |
|---|---|
signin_with |
|
signup_with |
|
continue_with |
|
signin |
|
आकार
बटन का आकार. डिफ़ॉल्ट वैल्यूrectangular है ज़्यादा जानकारी के लिए, नीचे दी गई टेबल देखें:
| टाइप | ज़रूरी है | उदाहरण |
|---|---|---|
| स्ट्रिंग | वैकल्पिक | shape: "rectangular" |
यहां दी गई टेबल में, बटन के उपलब्ध शेप और उनके बारे में जानकारी दी गई है:
| आकार | |
|---|---|
rectangular |
icon बटन टाइप के लिए किया जाता है, तो यह square जैसा ही होता है.
|
pill |
icon बटन टाइप के लिए किया जाता है, तो यह circle जैसा ही होता है.
|
circle |
standard बटन टाइप के लिए किया जाता है, तो यह pill जैसा ही होता है.
|
square |
standard बटन टाइप के लिए किया जाता है, तो यह rectangular जैसा ही होता है.
|
logo_alignment
Google के लोगो का अलाइनमेंट. डिफ़ॉल्ट वैल्यूleft है यह एट्रिब्यूट सिर्फ़ standard बटन टाइप पर लागू होता है. ज़्यादा जानकारी के लिए, नीचे दी गई टेबल देखें:
| टाइप | ज़रूरी है | उदाहरण |
|---|---|---|
| स्ट्रिंग | वैकल्पिक | logo_alignment: "center" |
यहां दी गई टेबल में, उपलब्ध अलाइनमेंट और उनके ब्यौरे दिए गए हैं:
| logo_alignment | |
|---|---|
left |
|
center |
|
चौड़ाई
पिक्सल में, बटन की कम से कम चौड़ाई. ज़्यादा से ज़्यादा चौड़ाई 400 पिक्सल होनी चाहिए.
ज़्यादा जानकारी के लिए, यहां दी गई टेबल देखें:
| टाइप | ज़रूरी है | उदाहरण |
|---|---|---|
| स्ट्रिंग | वैकल्पिक | width: "400" |
locale
ज़रूरी नहीं. बटन का टेक्स्ट, तय की गई स्थान-भाषा के हिसाब से दिखाएं. ऐसा न होने पर, उपयोगकर्ता के Google खाते या ब्राउज़र सेटिंग के हिसाब से डिफ़ॉल्ट रूप से दिखाएं. लाइब्रेरी लोड करते समय, src डायरेक्टिव में hl पैरामीटर और भाषा कोड जोड़ें. उदाहरण के लिए: gsi/client?hl=<iso-639-code>.
अगर इसे सेट नहीं किया जाता है, तो ब्राउज़र की डिफ़ॉल्ट भाषा या Google सेशन के उपयोगकर्ता की पसंद का इस्तेमाल किया जाता है. इसलिए, अलग-अलग उपयोगकर्ताओं को स्थानीय भाषा में बटन के अलग-अलग वर्शन दिख सकते हैं. साथ ही, हो सकता है कि बटन के साइज़ भी अलग-अलग हों.
ज़्यादा जानकारी के लिए, यहां दी गई टेबल देखें:
| टाइप | ज़रूरी है | उदाहरण |
|---|---|---|
| स्ट्रिंग | वैकल्पिक | locale: "zh_CN" |
click_listener
click_listener एट्रिब्यूट का इस्तेमाल करके, JavaScript फ़ंक्शन को तय किया जा सकता है. इससे, 'Google से साइन इन करें' बटन पर क्लिक करने पर, यह फ़ंक्शन कॉल किया जाएगा.
google.accounts.id.renderButton(document.getElementById("signinDiv"), { theme: 'outline', size: 'large', click_listener: onClickHandler }); function onClickHandler(){ console.log("Sign in with Google button clicked...") }
इस उदाहरण में, 'Google से साइन इन करें' बटन पर क्लिक करने पर, कंसोल में 'Google से साइन इन करें' बटन पर क्लिक किया गया... मैसेज लॉग किया जाता है.
राज्य
ज़रूरी नहीं है. एक ही पेज पर, 'Google से साइन इन करें' सुविधा के कई बटन रेंडर किए जा सकते हैं. हर बटन को एक यूनीक स्ट्रिंग असाइन की जा सकती है. आईडी टोकन के साथ वही स्ट्रिंग दिखेगी. इससे आपको यह पहचानने में मदद मिलेगी कि उपयोगकर्ता ने साइन इन करने के लिए किस बटन पर क्लिक किया था.
ज़्यादा जानकारी के लिए, यहां दी गई टेबल देखें:
| टाइप | ज़रूरी है | उदाहरण |
|---|---|---|
| स्ट्रिंग | वैकल्पिक | data-state: "button 1" |
डेटा टाइप: क्रेडेंशियल
जब आपके native_callback फ़ंक्शन को शुरू किया जाता है, तो Credential ऑब्जेक्ट को पैरामीटर के तौर पर पास किया जाता है. इस टेबल में, ऑब्जेक्ट में मौजूद फ़ील्ड की सूची दी गई है:
| फ़ील्ड | |
|---|---|
id |
उपयोगकर्ता की पहचान करता है. |
password |
पासवर्ड |
तरीका: google.accounts.id.disableAutoSelect
जब उपयोगकर्ता आपकी वेबसाइट से साइन आउट करता है, तो आपको कुकी में स्थिति रिकॉर्ड करने के लिए, google.accounts.id.disableAutoSelect तरीके को कॉल करना होगा. इससे यूएक्स डेड लूप से बचा जा सकता है. इस तरीके का यह कोड स्निपेट देखें:
google.accounts.id.disableAutoSelect()
यहां दिए गए कोड के उदाहरण में, onSignout() फ़ंक्शन के साथ google.accounts.id.disableAutoSelect तरीके को लागू किया गया है:
<script>
function onSignout() {
google.accounts.id.disableAutoSelect();
}
</script>
तरीका: google.accounts.id.storeCredential
यह तरीका, ब्राउज़र में पहले से मौजूद क्रेडेंशियल मैनेजर एपीआई के store() तरीके के लिए एक रैपर है. इसलिए, इसका इस्तेमाल सिर्फ़ पासवर्ड क्रेडेंशियल को सेव करने के लिए किया जा सकता है. इस तरीके के लिए, यहां दिया गया कोड देखें:
google.accounts.id.storeCredential(Credential, callback)
यहां दिए गए कोड के उदाहरण में, onSignIn() फ़ंक्शन के साथ google.accounts.id.storeCredential तरीके को लागू किया गया है:
<script>
function onSignIn() {
let cred = {id: '...', password: '...'};
google.accounts.id.storeCredential(cred);
}
</script>
तरीका: google.accounts.id.cancel
अगर भरोसा करने वाली पार्टी के डीओएम से प्रॉम्प्ट को हटा दिया जाता है, तो One Tap फ़्लो को रद्द किया जा सकता है. अगर क्रेडेंशियल पहले से चुना गया है, तो रद्द करने की कार्रवाई को अनदेखा कर दिया जाता है. इस तरीके के लिए, यहां दिया गया कोड देखें:
google.accounts.id.cancel()
यहां दिए गए कोड के उदाहरण में, onNextButtonClicked() फ़ंक्शन के साथ google.accounts.id.cancel() तरीके को लागू किया गया है:
<script>
function onNextButtonClicked() {
google.accounts.id.cancel();
showPasswordPage();
}
</script>
लाइब्रेरी लोड कॉलबैक: onGoogleLibraryLoad
onGoogleLibraryLoad कॉलबैक रजिस्टर किया जा सकता है. 'Google से साइन इन करें' सुविधा की JavaScript लाइब्रेरी लोड होने के बाद, इसकी सूचना दी जाती है:
window.onGoogleLibraryLoad = () => {
...
};
यह कॉलबैक, window.onload कॉलबैक का शॉर्टकट है. दोनों तरह के दर्शकों के व्यवहार में
कोई अंतर नहीं है.
यहां दिए गए कोड के उदाहरण में, onGoogleLibraryLoad कॉलबैक को लागू किया गया है:
<script>
window.onGoogleLibraryLoad = () => {
google.accounts.id.initialize({
...
});
google.accounts.id.prompt();
};
</script>
तरीका: google.accounts.id.revoke
google.accounts.id.revoke मेथड, OAuth के इस्तेमाल की अनुमति को वापस ले लेता है. इस अनुमति का इस्तेमाल, किसी उपयोगकर्ता के लिए आईडी टोकन शेयर करने के लिए किया जाता है. इस तरीके का यह कोड स्निपेट देखें:
javascript
google.accounts.id.revoke(login_hint, callback)
| पैरामीटर | टाइप | ब्यौरा |
|---|---|---|
login_hint |
स्ट्रिंग | उपयोगकर्ता के Google खाते का ईमेल पता या यूनीक आईडी. आईडी, क्रेडेंशियल पेलोड की sub प्रॉपर्टी है. |
callback |
फ़ंक्शन | ज़रूरी नहीं RevocationResponse हैंडलर. |
यहां दिए गए कोड सैंपल में, आईडी के साथ revoke तरीके का इस्तेमाल करने का तरीका बताया गया है.
google.accounts.id.revoke('1618033988749895', done => {
console.log(done.error);
});डेटा टाइप: RevocationResponse
callback फ़ंक्शन को शुरू करने पर, RevocationResponse ऑब्जेक्ट को पैरामीटर के तौर पर पास किया जाता है. यहां दी गई टेबल में, उन फ़ील्ड की सूची दी गई है जो रद्द करने के रिस्पॉन्स ऑब्जेक्ट में शामिल होते हैं:
| फ़ील्ड | |
|---|---|
successful |
यह फ़ील्ड, मेथड कॉल की रिटर्न वैल्यू है. |
error |
इस फ़ील्ड में, गड़बड़ी के बारे में ज़्यादा जानकारी देने वाला मैसेज शामिल हो सकता है. हालांकि, ऐसा करना ज़रूरी नहीं है. |
सफल
यह फ़ील्ड एक बूलियन वैल्यू है. अगर ऐक्सेस वापस लेने का तरीका सही तरीके से काम करता है, तो इसे 'सही' पर सेट किया जाता है. अगर यह तरीका काम नहीं करता है, तो इसे 'गलत' पर सेट किया जाता है.
गड़बड़ी
यह फ़ील्ड एक स्ट्रिंग वैल्यू है. इसमें गड़बड़ी का मैसेज होता है. यह मैसेज तब दिखता है, जब ऐक्सेस वापस लेने का तरीका काम नहीं करता. हालांकि, ऐक्सेस वापस लेने का तरीका काम करने पर, यह मैसेज नहीं दिखता.