2012-12-11 13 views
5

मुझे Google API जावा क्लाइंट लाइब्रेरी संस्करण 1.12.0-बीटा में एक साधारण सरल कार्य को समझने में समस्या आ रही है। मैं OAuth2 के साथ प्रमाणित कर सकता हूं और Google ड्राइव के उन हिस्सों को पुनर्प्राप्त और कुशलतापूर्वक उपयोग कर सकता हूं जिन्हें मुझे अपने आवेदन के लिए आवश्यक है। हालांकि, मैं Google best practices का पालन करना चाहता हूं और अपने ऐप के शीर्ष पर मूल उपयोगकर्ता जानकारी प्रदर्शित करना चाहता हूं।Google API जावा क्लाइंट - उपयोगकर्ता जानकारी प्राप्त करें

मैंने Google द्वारा प्रदान किए गए दस्तावेज़ों की भूलभुलैया की खोज की है और कई अन्य साइटों को भी खोजा है और मुझे जो चाहिए वह नहीं मिल रहा है। मैंने सर्वोत्तम अभ्यास पृष्ठ पर सुझाए गए Userinfo API में देखा। जहां तक ​​मैं देख सकता हूं, यह जावा क्लाइंट का एक हिस्सा होना चाहिए जिसका मैं उपयोग कर रहा हूं, लेकिन ऐसा नहीं है। मुझे एक full method example भी पता चला है कि मुझे उपयोगकर्ता जानकारी कैसे मिल सकती है। जिस वर्ग को यह संदर्भित करता है - Userinfo - क्लाइंट लाइब्रेरी में शामिल किसी भी libs का हिस्सा नहीं है जो मैं उपयोग कर रहा हूं। मैंने आगे यह देखने के लिए खोज की कि क्या मुझे एक अलग डाउनलोड याद आ रहा है जिसमें ओएथ सेवाएं जावा क्लाइंट शामिल होगा।

मुझे लगता है कि मेरे पास जो प्रमुख मुद्दा है, वह जावा क्लाइंट लाइब्रेरी के वर्तमान संस्करण के लिए प्रासंगिक जानकारी ढूंढ रहा है। क्या इस मुद्दे पर कोई और भाग गया है? बुनियादी उपयोगकर्ता जानकारी कैसे प्राप्त करें, यह जानने के लिए मैं किसी भी पॉइंटर्स की सराहना करता हूं।

आपकी मदद के लिए धन्यवाद।

उत्तर

0
से

About about = service.about().get().execute(); 
System.out.println("Current user name: " + about.getName()); 
System.out.println("Root folder ID: " + about.getRootFolderId()); 
System.out.println("Total quota (bytes): " + about.getQuotaBytesTotal()); 
System.out.println("Used quota (bytes): " + about.getQuotaBytesUsed()); 

(जहां सेवा com.google.api.services.drive.Drive के अपने उदाहरण है)

किसी को भी, देख के रूप में मैं था के लिए, आप की जरूरत है:

<dependency> 
     <groupId>com.google.apis</groupId> 
     <artifactId>google-api-services-oauth2</artifactId> 
</dependency> 

प्रो टिप: जब यो आपके पास जावा क्लास नाम है, मेवेन सेंट्रल, एडवांस्ड सर्च, और क्लास नाम के लिए खोज पर जाएं। यह कक्षाओं वाले सभी पुस्तकालयों की सूची देगा। आप या तो पूरी तरह से योग्य नाम या सिर्फ वर्ग का नाम उपयोग कर सकते हैं। यहां तक ​​कि यदि आप मेवेन का उपयोग नहीं करते हैं, तो आप वहां से जार फ़ाइल डाउनलोड कर सकते हैं।

0

यहाँ आप स्कोप के लिए Google डिस्क जोड़ने (जैसे। https://www.googleapis.com/auth/drive.file), तो आप भी Google डिस्क API

पूर्ण उदाहरण का उपयोग कर सकते हैं जावा में OAuth 2 का उपयोग UserInfo हो रही का एक उदाहरण है
https://github.com/riversun/google-login-servlet-example-simple

सर्वलेट

 GoogleCredential credential = OAuthSession.getInstance().createCredential(req); 

     Oauth2 oauth2 = new Oauth2.Builder(
       new com.google.api.client.http.javanet.NetHttpTransport(), 
       new com.google.api.client.json.jackson2.JacksonFactory(), 
       credential).build(); 

     // Get userInfo using credential 
     Userinfoplus userInfo = oauth2.userinfo().get().execute(); 

OAuthFilter में

// Return OAuth2 scope you want to be granted to by users 
    @Override 
    protected List<String> getScopes() { 

     final String OAUTH2_SCOPE_MAIL = "email"; 
     final String OAUTH2_SCOPE_USERINFO_PROFILE = "https://www.googleapis.com/auth/userinfo.profile"; 

     return Arrays.asList(OAUTH2_SCOPE_MAIL, OAUTH2_SCOPE_USERINFO_PROFILE);} 
संबंधित मुद्दे