2015-09-29 6 views
7

मैं अपनी वेबसाइट पर उपयोगकर्ताओं को प्रमाणीकृत करने के लिए Google Sign-in का उपयोग कर रहा हूं और फिर ऑफ़लाइन अनुमतियों के लिए एक अलग चरण के रूप में उपयोग कर रहा हूं।GoogleUser ऑब्जेक्ट में grantOfflineAccess विधि नहीं है?

प्रलेखन के अनुसार, GoogleUser ऑब्जेक्ट में "grantOfflineAccess" विधि होनी चाहिए जो अतिरिक्त अनुमतियों के लिए बिना उपयोगकर्ता को उनके खाते की पुष्टि करने के लिए प्रेरित करती है। हालांकि फायरबग में ऑब्जेक्ट का निरीक्षण करते हुए, मुझे वर्णित सभी अन्य विधियां मिलती हैं लेकिन अनुदानऑफलाइन एक्सेस नहीं।

मैं एक समाधान GoogleAuth वस्तु की grantOfflineAccess विधि का उपयोग है, लेकिन यह है कि उपयोगकर्ता बलों अपने अकाउंट (जो मैं से बचने के लिए, के रूप में वे सिर्फ प्रवेश के दौरान उस चरण प्रदर्शन चाहते हैं) की पुष्टि करने के। मैं लॉगिन रखना चाहता हूं और ऑफ़लाइन पहुंच को अधिकृत करता हूं, इसलिए मैं उनके बीच कुछ सत्यापन कर सकता हूं।

क्या प्रलेखन गलत/पुराना है? क्या मेरा वांछित व्यवहार पाने का कोई और तरीका है?

उत्तर

8

मैंने अभी इसे स्वयं जांच लिया है, विधि वास्तव में मौजूद नहीं है। मुझे लगता है कि यह वास्तव में दस्तावेज़ों में एक त्रुटि है।

इसलिए मैंने थोड़ा सा पोक किया और आप जो चाहते हैं उसे प्राप्त करने का एक और तरीका मिला: authuser नामक एक (स्पष्ट रूप से अनियंत्रित) पैरामीटर है। यह मूल रूप से आपके द्वारा लॉग इन किए गए खाते की अनुक्रमणिका है (पहले के लिए 0, दूसरे के लिए 1, ...)। गूगल कुछ और poking के बाद, मैं GoogleUser डेटा में authuser पाया Google डॉक्स आदि जैसे सामान के लिए आंतरिक रूप से इस का उपयोग करता है:

enter image description here

बाहर कर देता है कि wcgetAuthResponse() डेटा है, तो आप के साथ इस सूचकांक का उपयोग कर सकते हैं: gapi.auth2.getAuthInstance().currentUser.get().getAuthResponse().session_state.extraQueryParams.authuser

अब आप इस पैरामीटर के साथ GoogleAuth की grantOfflineAccess कॉल कर सकते हैं, तो निम्न गए कॉल में:

var auth = gapi.auth2.getAuthInstance(); 
var user = auth.currentUser.get(); 
auth.grantOfflineAccess({ 
    authuser: user.getAuthResponse().session_state.extraQueryParams.authuser 
}); 

यह खाता चयनकर्ता :-) आशा मैं मदद कर सकता है बिना शीघ्र खुलेगा!

+0

ग्रेट स्लेथिंग, धन्यवाद! – Wogan

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

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