इस पेज का अनुवाद Cloud Translation API से किया गया है.
Switch to English

अतिरिक्त अनुमति का अनुरोध

उपयोगकर्ता डेटा या अन्य संसाधनों तक पहुंचने के लिए उपयोगकर्ता की अनुमति का अनुरोध करते समय, आप सभी अनुरोधों को प्रारंभिक अनुरोध में अनुरोध कर सकते हैं या केवल आवश्यकतानुसार स्कोप को बढ़ा सकते हैं, वृद्धिशील प्राधिकरण का उपयोग कर। वृद्धिशील प्राधिकरण का उपयोग करते हुए, आपका ऐप शुरू में आपके ऐप को शुरू करने के लिए केवल स्कोप का अनुरोध करता है, फिर अतिरिक्त स्कोप का अनुरोध करता है क्योंकि नई अनुमतियों की आवश्यकता होती है, एक संदर्भ में जो उपयोगकर्ता के अनुरोध का कारण बताता है।

उदाहरण के लिए, मान लीजिए कि आपका ऐप उपयोगकर्ताओं को Google Play पर संगीत प्लेलिस्ट सहेजने देता है; आपका ऐप साइन-इन और बाद में, जब उपयोगकर्ता अपनी पहली प्लेलिस्ट को बचाने के लिए तैयार है, तो बुनियादी उपयोगकर्ता जानकारी का अनुरोध कर सकते हैं, केवल ड्राइव ड्राइव की अनुमति के लिए पूछें।

इस तकनीक का उपयोग करें यदि आपको संदेह है कि उपयोगकर्ता साइन इन नहीं कर रहे हैं क्योंकि आपकी सहमति स्क्रीन पर भारी है, या इस बारे में भ्रमित हैं कि उनसे कुछ अनुमतियों के लिए क्यों पूछा जा रहा है। निम्न निर्देश वेब के लिए हैं, और क्लाइंट-साइड साइन-इन बटन जोड़ने के निर्देशों से लिए गए हैं: Google 2.0 साइन-इन बटन का निर्माण । आप OAuth 2.0 दस्तावेज़ में वेब के लिए वृद्धिशील प्राधिकरण के बारे में अधिक पढ़ सकते हैं।

अतिरिक्त स्कोप का अनुरोध करना

साइन-इन पर, आपका ऐप "आधार" स्कोप का अनुरोध करता है, जिसमें साइन-इन स्कोप profile और साथ ही आपके ऐप को किसी अन्य प्रारंभिक स्कोप के संचालन के लिए आवश्यक है। बाद में, जब उपयोगकर्ता एक कार्रवाई करना चाहता है जिसमें अतिरिक्त स्कोप की आवश्यकता होती है, तो आपका ऐप उन अतिरिक्त स्कोप का अनुरोध करता है और उपयोगकर्ता एक सहमति स्क्रीन से केवल नए स्कोप को अधिकृत करता है।

चरण 1: बेस स्कॉप्स का अनुरोध करें

जब आप Google साइन-इन आरंभ करते हैं, तो आधार क्षेत्र profile अनुरोध करें। यह चरण Google 2.0 साइन-इन बटन के निर्माण में शामिल है।

auth2 = gapi.auth2.init({
    client_id: 'CLIENT_ID.apps.googleusercontent.com',
    cookiepolicy: 'single_host_origin', /** Default value **/
    scope: 'profile' });                /** Base scope **/

चरण 2: अतिरिक्त स्कोप का अनुरोध करें

जहाँ भी अतिरिक्त स्कोप की आवश्यकता होती है, तो user.grant({scope: [OPTIONS BUILDER]}).then(successFunction, failFunction); साथ एक विकल्प बिल्डर का निर्माण करके उनसे अनुरोध करें जिसे आप जोड़ना चाहते हैं और फिर user.grant({scope: [OPTIONS BUILDER]}).then(successFunction, failFunction); कॉल करना चाहते हैं user.grant({scope: [OPTIONS BUILDER]}).then(successFunction, failFunction); :

const option = new gapi.auth2.SigninOptionsBuilder();
option.setScope('email https://www.googleapis.com/auth/drive');

googleUser = auth2.currentUser.get();
googleUser.grant(options).then(
    function(success){
      console.log(JSON.stringify({message: "success", value: success}));
    },
    function(fail){
      alert(JSON.stringify({message: "fail", value: fail}));
    });