हम वेब के लिए Google साइन-इन JavaScript प्लैटफ़ॉर्म लाइब्रेरी बंद कर रहे हैं. लाइब्रेरी को 31 मार्च, 2023 को बंद करने के बाद, इसे डाउनलोड नहीं किया जा सकेगा. इसके बजाय, वेब के लिए नई Google पहचान सेवाओं का इस्तेमाल करें.
डिफ़ॉल्ट रूप से, बनाए गए नए क्लाइंट आईडी को अब पुरानी प्लैटफ़ॉर्म लाइब्रेरी का इस्तेमाल करने से रोक दिया गया है. मौजूदा क्लाइंट आईडी पर इसका कोई असर नहीं पड़ेगा. Google क्लाइंट लाइब्रेरी का इस्तेमाल चालू करने के लिए, 29 जुलाई, 2022 से पहले बनाए गए नए क्लाइंट आईडी, `प्लग इन_नाम` सेट कर सकते हैं.

श्रोताओं का उपयोग करके Google साइन-इन को एकीकृत करना

श्रोता वर्तमान उपयोगकर्ता के साइन-इन सत्र में परिवर्तनों का स्वचालित रूप से जवाब देने का एक तरीका प्रदान करते हैं। उदाहरण के लिए, आपकी स्टार्टअप विधि के बाद Google साइन-इन 2 प्रॉडक्ट्स को इनिशियलाइज़ करता है, तो आप श्रोताओं को सेट कर सकते हैं जैसे कि auth2.isSignedIn जैसी घटनाओं पर प्रतिक्रिया करने के लिए, या auth2.currentUser में auth2.currentUser

निम्नलिखित कोड 2.0 क्लाइंट विधि का उपयोग कर प्रदर्शित करता है कि listen() में परिवर्तन के लिए प्रतिक्रिया करने auth2.isSignedIn और auth2.currentUser

var auth2; // The Sign-In object.
var googleUser; // The current user.


/**
 * Calls startAuth after Sign in V2 finishes setting up.
 */
var appStart = function() {
  gapi.load('auth2', initSigninV2);
};


/**
 * Initializes Signin v2 and sets up listeners.
 */
var initSigninV2 = function() {
  auth2 = gapi.auth2.init({
      client_id: 'CLIENT_ID.apps.googleusercontent.com',
      scope: 'profile'
  });

  // Listen for sign-in state changes.
  auth2.isSignedIn.listen(signinChanged);

  // Listen for changes to current user.
  auth2.currentUser.listen(userChanged);

  // Sign in the user if they are currently signed in.
  if (auth2.isSignedIn.get() == true) {
    auth2.signIn();
  }

  // Start with the current live values.
  refreshValues();
};


/**
 * Listener method for sign-out live value.
 *
 * @param {boolean} val the updated signed out state.
 */
var signinChanged = function (val) {
  console.log('Signin state changed to ', val);
  document.getElementById('signed-in-cell').innerText = val;
};


/**
 * Listener method for when the user changes.
 *
 * @param {GoogleUser} user the updated user.
 */
var userChanged = function (user) {
  console.log('User now: ', user);
  googleUser = user;
  updateGoogleUser();
  document.getElementById('curr-user-cell').innerText =
    JSON.stringify(user, undefined, 2);
};


/**
 * Updates the properties in the Google User table using the current user.
 */
var updateGoogleUser = function () {
  if (googleUser) {
    document.getElementById('user-id').innerText = googleUser.getId();
    document.getElementById('user-scopes').innerText =
      googleUser.getGrantedScopes();
    document.getElementById('auth-response').innerText =
      JSON.stringify(googleUser.getAuthResponse(), undefined, 2);
  } else {
    document.getElementById('user-id').innerText = '--';
    document.getElementById('user-scopes').innerText = '--';
    document.getElementById('auth-response').innerText = '--';
  }
};


/**
 * Retrieves the current user and signed in states from the GoogleAuth
 * object.
 */
var refreshValues = function() {
  if (auth2){
    console.log('Refreshing values...');

    googleUser = auth2.currentUser.get();

    document.getElementById('curr-user-cell').innerText =
      JSON.stringify(googleUser, undefined, 2);
    document.getElementById('signed-in-cell').innerText =
      auth2.isSignedIn.get();

    updateGoogleUser();
  }
}