2014-04-18 4 views
5

के बाद साइनआउट कॉल करने में त्रुटि मैं google + के लिए क्लाइंट साइड लॉगिन का उपयोग कर रहा हूं। पहुंच टोकन 1 घंटे में समाप्त हो जाती है। कॉलिंग gapi.auth.signOut() टोकन की समय सीमा समाप्त होने के बाद उपयोगकर्ता को लॉग आउट नहीं करता है। मैं उपयोगकर्ता को फिर से अधिकृत करने की कोशिश कर रहा हूं यदि उसके टोकन को gapi.auth.authorize पर क्लाइंट_आईडी, स्कोप और immediate = true पैरामीटर के साथ कॉल करके समाप्त हो गया है। इस विधि को कॉल करने के बाद, gapi.auth.signOut() काम नहीं करता है। मैं समझ नहीं पा रहा हूं कि यह क्यों है।gapi.auth.authorize

var google = { 
    signOut: function() { 
     var token = gapi.auth.getToken(); 

     if(!token) { 
      var params = { 
       'client_id': global.clientid, 
       'session_state': global.sessionState, 
       'response_type':'token' 
      } 
      gapi.auth.checkSessionState(params, function(state){ 
       if(state == true) { 
        google.doSignOut(); 
       } else { 
        google.silentAuthorize(function(data){ 
         google.doSignOut(); 
        }); 
       } 
      }); 
     } else { 
      google.doSignOut(); 
     } 

    }, 

    doSignOut: function() { 
     gapi.auth.signOut(); 
     google.loggedin = false; 
    }, 

    silentAuthorize: function(callback) { 
     var params = {}; 
     params.client_id = global.clientid; 
     params.immediate = true; 
     params.scope = "https://www.googleapis.com/auth/userinfo.email https://www.googleapis.com/auth/plus.me https://www.googleapis.com/auth/plus.login" 

     gapi.auth.authorize(params, callback); 
    } 
} 

बुला google.signOut ठीक काम करता है, जबकि टोकन समाप्त नहीं हुआ है:

यहाँ कोड है।

लेखन त्रुटि:: अशक्त की 'स्पष्ट' संपत्ति पढ़ा नहीं जा सकता

लेकिन एक बार टोकन एक कॉलबैक के साथ समाप्त हो गया है या मैं साधारण कॉल google.silentAuthorize(), gapi.auth.signOut() कॉल करने में त्रुटि फेंक शुरू होता है

अब 4 घंटों के लिए इसे समझने की कोशिश कर रहे थे, किसी भी मदद की अत्यधिक सराहना की जाती है!

उत्तर

0

मुझे आगे के अंत से टोकन को नवीनीकृत करने के लिए वैसे भी नहीं मिला, इसलिए मैंने google auth का उपयोग करने के संकर विधि पर स्विच किया। मैं अब PHP के भीतर समाप्त होने के बारे में हर बार सत्र को पुनर्जीवित करता हूं।

संबंधित मुद्दे

 संबंधित मुद्दे