অতিরিক্ত অনুমতির জন্য অনুরোধ করা হচ্ছে

ব্যবহারকারীর ডেটা বা অন্যান্য সংস্থানগুলি অ্যাক্সেস করার জন্য ব্যবহারকারীর অনুমতির অনুরোধ করার সময়, আপনি ক্রমবর্ধমান অনুমোদন ব্যবহার করে প্রাথমিক অনুরোধে সমস্ত সুযোগ-সুবিধার অনুরোধ করতে পারেন বা প্রয়োজন অনুসারে স্কোপের অনুরোধ করতে পারেন। ক্রমবর্ধমান অনুমোদন ব্যবহার করে, আপনার অ্যাপ প্রাথমিকভাবে শুধুমাত্র আপনার অ্যাপ শুরু করার জন্য প্রয়োজনীয় স্কোপের অনুরোধ করে, তারপর নতুন অনুমতির প্রয়োজন হলে অতিরিক্ত সুযোগের অনুরোধ করে, এমন একটি প্রেক্ষাপটে যা ব্যবহারকারীর অনুরোধের কারণ চিহ্নিত করে।

উদাহরণস্বরূপ, ধরুন আপনার অ্যাপ ব্যবহারকারীদের Google ড্রাইভে সঙ্গীত প্লেলিস্ট সংরক্ষণ করতে দেয়; আপনার অ্যাপ সাইন-ইন করার সময় ব্যবহারকারীর মৌলিক তথ্যের জন্য অনুরোধ করতে পারে, এবং পরে, যখন ব্যবহারকারী তাদের প্রথম প্লেলিস্ট সংরক্ষণ করতে প্রস্তুত থাকে, শুধুমাত্র Google ড্রাইভ অনুমতির জন্য জিজ্ঞাসা করুন৷

এই কৌশলটি ব্যবহার করুন যদি আপনি সন্দেহ করেন যে ব্যবহারকারীরা সাইন ইন করছেন না কারণ আপনার সম্মতি স্ক্রীন অপ্রতিরোধ্য, বা কেন তাদের নির্দিষ্ট অনুমতি চাওয়া হচ্ছে তা নিয়ে বিভ্রান্ত। নিম্নলিখিত নির্দেশাবলী ওয়েবের জন্য, এবং একটি ক্লায়েন্ট-সাইড সাইন-ইন বোতাম যোগ করার নির্দেশাবলী থেকে প্রাপ্ত: একটি 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); :

const options = new gapi.auth2.SigninOptionsBuilder();
options.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}));
    });