इस रेफ़रंस में, Google Account Authorization JavaScript API के बारे में बताया गया है. इसका इस्तेमाल, Google से अनुमति कोड या ऐक्सेस टोकन पाने के लिए किया जाता है.
तरीका: google.accounts.oauth2.initCodeClient
initCodeClient
वाला तरीका, पैरामीटर में दिए गए कॉन्फ़िगरेशन के साथ कोड क्लाइंट को शुरू करता है और उसे दिखाता है.
google.accounts.oauth2.initCodeClient(config: CodeClientConfig)
डेटा टाइप: CodeClientConfig
नीचे दी गई टेबल में, CodeClientConfig
डेटा टाइप की प्रॉपर्टी दी गई हैं.
प्रॉपर्टी | |
---|---|
client_id
|
ज़रूरी है. आपके ऐप्लिकेशन का क्लाइंट आईडी. यह वैल्यू, एपीआई कंसोल में देखी जा सकती है. |
scope
|
ज़रूरी है. यह स्पेस से अलग की गई स्कोप की सूची होती है. इससे उन संसाधनों की पहचान होती है जिन्हें आपका ऐप्लिकेशन, उपयोगकर्ता की ओर से ऐक्सेस कर सकता है. इन वैल्यू से, Google को यह जानकारी मिलती है कि उपयोगकर्ता को सहमति वाली कौनसी स्क्रीन दिखानी है. |
include_granted_scopes |
ज़रूरी नहीं, डिफ़ॉल्ट रूप से true पर सेट होता है. इससे ऐप्लिकेशन, ज़रूरत के मुताबिक अनुमति मांगने की सुविधा का इस्तेमाल करके, किसी संदर्भ में अतिरिक्त स्कोप ऐक्सेस करने का अनुरोध कर पाते हैं. अगर इस पैरामीटर की वैल्यू को false पर सेट किया जाता है और अनुमति देने का अनुरोध स्वीकार कर लिया जाता है, तो नए ऐक्सेस टोकन में सिर्फ़ वे स्कोप शामिल होंगे जिनके लिए scope ने इस CodeClientConfig में अनुरोध किया था.
|
redirect_uri
|
रीडायरेक्ट किए गए यूज़र एक्सपीरियंस के लिए ज़रूरी है. यह कुकी तय करती है कि उपयोगकर्ता के अनुमति देने की प्रोसेस पूरी करने के बाद, एपीआई सर्वर उसे कहां रीडायरेक्ट करेगा. यह वैल्यू, OAuth 2.0 क्लाइंट के लिए अनुमति वाले रीडायरेक्ट यूआरआई में से किसी एक से पूरी तरह मेल खानी चाहिए. इसे आपने API Console में कॉन्फ़िगर किया हो. साथ ही, यह रीडायरेक्ट यूआरआई की पुष्टि करने के नियमों के मुताबिक होनी चाहिए. पॉप-अप यूज़र एक्सपीरियंस (यूएक्स) में इस प्रॉपर्टी को अनदेखा कर दिया जाएगा. |
callback |
पॉप-अप यूज़र एक्सपीरियंस के लिए ज़रूरी है. यह JavaScript फ़ंक्शन, कोड के जवाब को हैंडल करता है. रीडाइरेक्ट करने वाले UX में इस प्रॉपर्टी को अनदेखा कर दिया जाएगा. |
state |
ज़रूरी नहीं. रीडायरेक्ट यूज़र एक्सपीरियंस के लिए सुझाव दिया गया है. यह ऐसी स्ट्रिंग वैल्यू तय करता है जिसका इस्तेमाल आपका ऐप्लिकेशन, अनुमति के अनुरोध और अनुमति देने वाले सर्वर की प्रतिक्रिया के बीच की स्थिति को बनाए रखने के लिए करता है. |
enable_granular_consent |
यह सुविधा अब काम नहीं करती. इसे सेट करने पर कोई असर नहीं होता. सहमति के व्यवहार के बारे में जानकारी के लिए, ज़्यादा बेहतर तरीके से कंट्रोल की जा सकने वाली अनुमतियां देखें. |
enable_serial_consent |
यह सुविधा अब काम नहीं करती. इसे सेट करने पर कोई असर नहीं होता. सहमति के व्यवहार के बारे में जानकारी के लिए, ज़्यादा बेहतर तरीके से कंट्रोल की जा सकने वाली अनुमतियां देखें. |
login_hint |
ज़रूरी नहीं. अगर आपके ऐप्लिकेशन को पता है कि अनुरोध की पुष्टि किस उपयोगकर्ता को करनी है, तो वह इस प्रॉपर्टी का इस्तेमाल करके Google को लॉगिन के बारे में जानकारी दे सकता है. अगर ऐसा हो जाता है, तो खाता चुनने का विकल्प नहीं दिखता. टारगेट किए गए उपयोगकर्ता के लिए, ईमेल पता या आईडी टोकन sub फ़ील्ड की वैल्यू.
ज़्यादा जानकारी के लिए, OpenID Connect के दस्तावेज़ में login_hint फ़ील्ड देखें.
|
hd |
ज़रूरी नहीं. अगर आपके ऐप्लिकेशन को पता है कि उपयोगकर्ता किस Workspace डोमेन से है, तो Google को इसकी जानकारी दें. अगर यह प्रोसेस पूरी हो जाती है, तो उपयोगकर्ता खाते, दिए गए डोमेन तक सीमित हो जाते हैं या उन्हें पहले से चुन लिया जाता है.
ज़्यादा जानकारी के लिए, OpenID Connect के दस्तावेज़ में hd फ़ील्ड देखें.
|
ux_mode |
ज़रूरी नहीं. ऑथराइज़ेशन फ़्लो के लिए इस्तेमाल किया जाने वाला यूज़र एक्सपीरियंस मोड. डिफ़ॉल्ट रूप से, यह सहमति लेने की प्रोसेस को पॉप-अप में खोलेगा. मान्य वैल्यू popup और redirect हैं.
|
select_account |
ज़रूरी नहीं. डिफ़ॉल्ट रूप से, इसकी वैल्यू 'false' होती है. बूलियन वैल्यू, ताकि उपयोगकर्ता को खाता चुनने के लिए कहा जा सके. |
error_callback |
ज़रूरी नहीं. यह JavaScript फ़ंक्शन, OAuth से जुड़ी कुछ गड़बड़ियों को ठीक करता है. जैसे, पॉप-अप विंडो नहीं खुलती या OAuth रिस्पॉन्स मिलने से पहले बंद हो जाती है.
इनपुट पैरामीटर के `type` फ़ील्ड में, इसकी वजह के बारे में पूरी जानकारी दी गई है.
|
डेटा टाइप: CodeClient
इस क्लास में सिर्फ़ एक सार्वजनिक तरीका है, requestCode. यह OAuth 2.0 कोड UX फ़्लो शुरू करता है.
interface CodeClient {
requestCode(): void;
}
डेटा टाइप: CodeResponse
पॉप-अप यूज़र एक्सपीरियंस में, आपके callback
तरीके को CodeResponse
JavaScript ऑब्जेक्ट पास किया जाएगा. रीडायरेक्ट यूज़र एक्सपीरियंस में, CodeResponse
को यूआरएल पैरामीटर के तौर पर पास किया जाएगा.
नीचे दी गई टेबल में, CodeResponse
डेटा टाइप की प्रॉपर्टी दी गई हैं.
प्रॉपर्टी | |
---|---|
code |
टोकन के जवाब का अनुमति कोड. |
scope |
यह स्कोप की ऐसी सूची होती है जिसमें हर स्कोप के बीच में खाली जगह होती है. इस सूची में वे स्कोप शामिल होते हैं जिन्हें उपयोगकर्ता ने अनुमति दी है. |
state |
यह स्ट्रिंग वैल्यू है. इसका इस्तेमाल आपका ऐप्लिकेशन, अनुमति के अनुरोध और जवाब के बीच की स्थिति को बनाए रखने के लिए करता है. |
error |
एकल ASCII गड़बड़ी कोड. |
error_description |
यह ऐसी ASCII टेक्स्ट फ़ाइल होती है जिसे आसानी से पढ़ा जा सकता है. इसमें अतिरिक्त जानकारी दी जाती है. इसका इस्तेमाल, क्लाइंट डेवलपर को हुई गड़बड़ी के बारे में बताने के लिए किया जाता है. |
error_uri |
यह एक यूआरआई है. यह ऐसी वेबसाइट की पहचान करता है जिसे आसानी से पढ़ा जा सकता है. इसमें गड़बड़ी के बारे में जानकारी होती है. इसका इस्तेमाल, क्लाइंट डेवलपर को गड़बड़ी के बारे में ज़्यादा जानकारी देने के लिए किया जाता है. |
तरीका: google.accounts.oauth2.initTokenClient
initTokenClient
वाला तरीका, पैरामीटर में दिए गए कॉन्फ़िगरेशन के साथ, टोकन क्लाइंट को शुरू करता है और उसे दिखाता है.
google.accounts.oauth2.initTokenClient(config: TokenClientConfig)
डेटा टाइप: TokenClientConfig
नीचे दी गई टेबल में, TokenClientConfig
डेटा टाइप की प्रॉपर्टी दी गई हैं.
प्रॉपर्टी | |
---|---|
client_id |
ज़रूरी है. आपके ऐप्लिकेशन का क्लाइंट आईडी. यह वैल्यू, API Console में देखी जा सकती है. |
callback |
ज़रूरी है. यह JavaScript फ़ंक्शन, वापस भेजे गए टोकन के जवाब को हैंडल करता है. |
scope |
ज़रूरी है. यह स्पेस से अलग की गई स्कोप की सूची होती है. इससे उन संसाधनों की पहचान होती है जिन्हें आपका ऐप्लिकेशन, उपयोगकर्ता की ओर से ऐक्सेस कर सकता है. इन वैल्यू से, Google को यह जानकारी मिलती है कि उपयोगकर्ता को सहमति वाली कौनसी स्क्रीन दिखानी है. |
include_granted_scopes |
ज़रूरी नहीं, डिफ़ॉल्ट रूप से true पर सेट होता है. इससे ऐप्लिकेशन, ज़रूरत के मुताबिक अनुमति मांगने की सुविधा का इस्तेमाल करके, किसी संदर्भ में अतिरिक्त स्कोप ऐक्सेस करने का अनुरोध कर पाते हैं. अगर इस पैरामीटर की वैल्यू को false पर सेट किया जाता है और अनुमति देने का अनुरोध स्वीकार कर लिया जाता है, तो नए ऐक्सेस टोकन में सिर्फ़ वे स्कोप शामिल होंगे जिनके लिए scope ने इस TokenClientConfig में अनुरोध किया था.
|
prompt |
ज़रूरी नहीं. डिफ़ॉल्ट रूप से, इसकी वैल्यू 'select_account' होती है. यह एक ऐसी सूची होती है जिसमें स्पेस के हिसाब से सीमाएं तय की जाती हैं. साथ ही, इसमें अंग्रेज़ी के छोटे और बड़े अक्षरों का फ़र्क़ पड़ता है. इस सूची में ऐसे प्रॉम्प्ट होते हैं जो उपयोगकर्ता को दिखाए जाते हैं. इन वैल्यू का इस्तेमाल किया जा सकता है:
|
enable_granular_consent |
यह सुविधा अब काम नहीं करती. इसे सेट करने पर कोई असर नहीं होता. सहमति के व्यवहार के बारे में जानकारी के लिए, ज़्यादा बेहतर तरीके से कंट्रोल की जा सकने वाली अनुमतियां देखें. |
enable_serial_consent |
यह सुविधा अब काम नहीं करती. इसे सेट करने पर कोई असर नहीं होता. सहमति के व्यवहार के बारे में जानकारी के लिए, ज़्यादा बेहतर तरीके से कंट्रोल की जा सकने वाली अनुमतियां देखें. |
login_hint |
ज़रूरी नहीं. अगर आपके ऐप्लिकेशन को पता है कि अनुरोध की पुष्टि किस उपयोगकर्ता को करनी है, तो वह इस प्रॉपर्टी का इस्तेमाल करके Google को लॉगिन के बारे में जानकारी दे सकता है. अगर ऐसा हो जाता है, तो खाता चुनने का विकल्प नहीं दिखता. टारगेट किए गए उपयोगकर्ता के लिए, ईमेल पता या आईडी टोकन sub फ़ील्ड की वैल्यू.
ज़्यादा जानकारी के लिए, OpenID Connect के दस्तावेज़ में login_hint फ़ील्ड देखें.
|
hd |
ज़रूरी नहीं. अगर आपके ऐप्लिकेशन को पता है कि उपयोगकर्ता किस Workspace डोमेन से है, तो Google को इसकी जानकारी दें. अगर यह प्रोसेस पूरी हो जाती है, तो उपयोगकर्ता खाते, दिए गए डोमेन तक सीमित हो जाते हैं या उन्हें पहले से चुन लिया जाता है.
ज़्यादा जानकारी के लिए, OpenID Connect के दस्तावेज़ में hd फ़ील्ड देखें.
|
state |
ज़रूरी नहीं. इसे इस्तेमाल करने का सुझाव नहीं दिया जाता है. यह ऐसी स्ट्रिंग वैल्यू तय करता है जिसका इस्तेमाल आपका ऐप्लिकेशन, अनुमति के अनुरोध और अनुमति देने वाले सर्वर की प्रतिक्रिया के बीच की स्थिति को बनाए रखने के लिए करता है. |
error_callback |
ज़रूरी नहीं. यह JavaScript फ़ंक्शन, OAuth से जुड़ी कुछ गड़बड़ियों को ठीक करता है. जैसे, पॉप-अप विंडो नहीं खुलती या OAuth रिस्पॉन्स मिलने से पहले बंद हो जाती है.
इनपुट पैरामीटर के `type` फ़ील्ड में, इसकी वजह के बारे में पूरी जानकारी दी गई है.
|
डेटा टाइप: TokenClient
इस क्लास में सिर्फ़ एक सार्वजनिक तरीका requestAccessToken
होता है, जो OAuth 2.0 टोकन UX फ़्लो शुरू करता है.
interface TokenClient {
requestAccessToken(overrideConfig?: OverridableTokenClientConfig): void;
}
तर्क | ||
---|---|---|
overrideConfig |
OverridableTokenClientConfig | ज़रूरी नहीं. इस तरीके में, बदले जाने वाले कॉन्फ़िगरेशन. |
डेटा टाइप: OverridableTokenClientConfig
नीचे दी गई टेबल में, OverridableTokenClientConfig
डेटा टाइप की प्रॉपर्टी के बारे में बताया गया है.
प्रॉपर्टी | |
---|---|
scope |
ज़रूरी नहीं. यह स्पेस से अलग की गई स्कोप की सूची होती है. इससे उन संसाधनों की पहचान होती है जिन्हें आपका ऐप्लिकेशन, उपयोगकर्ता की ओर से ऐक्सेस कर सकता है. इन वैल्यू से, सहमति वाली उस स्क्रीन के बारे में पता चलता है जिसे Google, उपयोगकर्ता को दिखाता है. |
include_granted_scopes |
ज़रूरी नहीं, डिफ़ॉल्ट रूप से true पर सेट होता है. इससे ऐप्लिकेशन, ज़रूरत के मुताबिक अनुमति मांगने की सुविधा का इस्तेमाल करके, किसी संदर्भ में अतिरिक्त स्कोप ऐक्सेस करने का अनुरोध कर पाते हैं. अगर इस पैरामीटर की वैल्यू को false पर सेट किया जाता है और अनुमति देने का अनुरोध स्वीकार कर लिया जाता है, तो नए ऐक्सेस टोकन में सिर्फ़ वे स्कोप शामिल होंगे जिनके लिए scope ने इस OverridableTokenClientConfig में अनुरोध किया था.
|
prompt |
ज़रूरी नहीं. यह एक ऐसी सूची होती है जिसमें स्पेस के हिसाब से सीमाएं तय की जाती हैं. साथ ही, इसमें अंग्रेज़ी के छोटे और बड़े अक्षरों का फ़र्क़ पड़ता है. इस सूची में ऐसे प्रॉम्प्ट होते हैं जो उपयोगकर्ता को दिखाए जाते हैं. |
enable_granular_consent |
यह सुविधा अब काम नहीं करती. इसे सेट करने पर कोई असर नहीं होता. सहमति के व्यवहार के बारे में जानकारी के लिए, ज़्यादा बेहतर तरीके से कंट्रोल की जा सकने वाली अनुमतियां देखें. |
enable_serial_consent |
यह सुविधा अब काम नहीं करती. इसे सेट करने पर कोई असर नहीं होता. सहमति के व्यवहार के बारे में जानकारी के लिए, ज़्यादा बेहतर तरीके से कंट्रोल की जा सकने वाली अनुमतियां देखें. |
login_hint |
ज़रूरी नहीं. अगर आपके ऐप्लिकेशन को पता है कि अनुरोध की पुष्टि किस उपयोगकर्ता को करनी है, तो वह इस प्रॉपर्टी का इस्तेमाल करके Google को लॉगिन के बारे में जानकारी दे सकता है. अगर ऐसा हो जाता है, तो खाता चुनने का विकल्प नहीं दिखता. टारगेट किए गए उपयोगकर्ता के लिए, ईमेल पता या आईडी टोकन sub फ़ील्ड की वैल्यू.
ज़्यादा जानकारी के लिए, OpenID Connect के दस्तावेज़ में login_hint फ़ील्ड देखें.
|
state |
ज़रूरी नहीं. इसे इस्तेमाल करने का सुझाव नहीं दिया जाता है. यह ऐसी स्ट्रिंग वैल्यू तय करता है जिसका इस्तेमाल आपका ऐप्लिकेशन, अनुमति के अनुरोध और अनुमति देने वाले सर्वर की प्रतिक्रिया के बीच की स्थिति को बनाए रखने के लिए करता है. |
डेटा टाइप: TokenResponse
पॉप-अप यूज़र एक्सपीरियंस (यूएक्स) में, आपके कॉलबैक फ़ंक्शन को TokenResponse
JavaScript ऑब्जेक्ट पास किया जाएगा.
नीचे दी गई टेबल में, TokenResponse
डेटा टाइप की प्रॉपर्टी दी गई हैं.
प्रॉपर्टी | |
---|---|
access_token |
टोकन के जवाब में मिला ऐक्सेस टोकन. |
expires_in |
ऐक्सेस टोकन की लाइफ़टाइम अवधि, सेकंड में. |
hd |
साइन इन करने वाला उपयोगकर्ता जिस होस्ट किए गए डोमेन से जुड़ा है. |
prompt |
प्रॉम्प्ट की वह वैल्यू जिसका इस्तेमाल, TokenClientConfig या OverridableTokenClientConfig में दी गई वैल्यू की संभावित सूची से किया गया था. |
token_type |
जारी किया गया टोकन किस तरह का है. |
scope |
यह स्कोप की ऐसी सूची होती है जिसमें हर स्कोप के बीच में खाली जगह होती है. इस सूची में वे स्कोप शामिल होते हैं जिन्हें उपयोगकर्ता ने अनुमति दी है. |
state |
यह स्ट्रिंग वैल्यू है. इसका इस्तेमाल आपका ऐप्लिकेशन, अनुमति के अनुरोध और जवाब के बीच की स्थिति को बनाए रखने के लिए करता है. |
error |
एकल ASCII गड़बड़ी कोड. |
error_description |
यह ऐसी ASCII टेक्स्ट फ़ाइल होती है जिसे आसानी से पढ़ा जा सकता है. इसमें अतिरिक्त जानकारी दी जाती है. इसका इस्तेमाल, क्लाइंट डेवलपर को हुई गड़बड़ी को समझने में मदद करने के लिए किया जाता है. |
error_uri |
यह एक यूआरआई है. यह ऐसी वेबसाइट की पहचान करता है जिसे आसानी से पढ़ा जा सकता है. इसमें गड़बड़ी के बारे में जानकारी होती है. इसका इस्तेमाल, क्लाइंट डेवलपर को गड़बड़ी के बारे में ज़्यादा जानकारी देने के लिए किया जाता है. |
तरीका: google.accounts.oauth2.hasGrantedAllScopes
इससे यह पता चलता है कि उपयोगकर्ता ने तय किए गए सभी स्कोप को अनुमति दी है या नहीं.
google.accounts.oauth2.hasGrantedAllScopes(
tokenResponse: TokenResponse,
firstScope: string, ...restScopes: string[]
): boolean;
तर्क | ||
---|---|---|
tokenResponse |
TokenResponse
|
ज़रूरी है. TokenResponse
ऑब्जेक्ट.
|
firstScope |
स्ट्रिंग | ज़रूरी है. वह स्कोप जिसकी जांच करनी है. |
restScopes |
string[] | ज़रूरी नहीं. जांच करने के लिए अन्य स्कोप. |
रिटर्न | |
---|---|
बूलियन | अगर सभी स्कोप के लिए अनुमति दी गई है, तो यह वैल्यू True होती है. |
तरीका: google.accounts.oauth2.hasGrantedAnyScope
यह कुकी, यह जांच करती है कि उपयोगकर्ता ने तय किए गए स्कोप में से किसी एक या उससे ज़्यादा स्कोप के लिए अनुमति दी है या नहीं.
google.accounts.oauth2.hasGrantedAnyScope(
tokenResponse: TokenResponse,
firstScope: string, ...restScopes: string[]
): boolean;
तर्क | ||
---|---|---|
tokenResponse |
TokenResponse
|
ज़रूरी है. TokenResponse
ऑब्जेक्ट.
|
firstScope |
स्ट्रिंग | ज़रूरी है. वह स्कोप जिसकी जांच करनी है. |
restScopes |
string[] | ज़रूरी नहीं. जांच करने के लिए अन्य स्कोप. |
रिटर्न | |
---|---|
बूलियन | अगर कोई भी स्कोप दिया गया है, तो यह वैल्यू सही होती है. |
तरीका: google.accounts.oauth2.revoke
revoke
तरीके से, उन सभी स्कोप को रद्द कर दिया जाता है जिन्हें उपयोगकर्ता ने ऐप्लिकेशन को दिया था.
अनुमति रद्द करने के लिए, मान्य ऐक्सेस टोकन होना ज़रूरी है.
google.accounts.oauth2.revoke(accessToken: string, done: () => void): void;
तर्क | ||
---|---|---|
accessToken |
स्ट्रिंग | ज़रूरी है. मान्य ऐक्सेस टोकन. |
callback |
फ़ंक्शन | ज़रूरी नहीं. RevocationResponse हैंडलर. |
डेटा टाइप: RevocationResponse
आपके कॉलबैक तरीके को RevocationResponse
JavaScript ऑब्जेक्ट पास किया जाएगा.
नीचे दी गई टेबल में, RevocationResponse
डेटा टाइप की प्रॉपर्टी दी गई हैं.
प्रॉपर्टी | |
---|---|
successful |
बूलियन. true सफल होने पर, false विफल होने पर. |
error |
स्ट्रिंग. सफल होने पर, इसकी वैल्यू तय नहीं होती. एकल ASCII गड़बड़ी कोड. इसमें OAuth 2.0 के स्टैंडर्ड गड़बड़ी कोड शामिल हैं. हालांकि, इनके अलावा और भी कोड शामिल हो सकते हैं. revoke तरीके से डेटा भेजने पर होने वाली सामान्य गड़बड़ियां:
|
error_description |
स्ट्रिंग. सफल होने पर, इसकी वैल्यू तय नहीं होती. इंसान के पढ़ने लायक़ ASCII टेक्स्ट, error प्रॉपर्टी के बारे में अतिरिक्त जानकारी देता है. डेवलपर इसका इस्तेमाल, गड़बड़ी को बेहतर तरीके से समझने के लिए कर सकते हैं. error_description स्ट्रिंग सिर्फ़ अंग्रेज़ी में है.
error से जुड़ी error_description में दी गई सामान्य गड़बड़ियों के लिए:
|