Tomcat सर्वर में एक आराम एपीआई के रूप में Google क्लास रूम जावा एपीआई का उपयोग करना

Aug 17 2020

मैं Tomcat सर्वर में REST API के रूप में Google क्लासरूम जावा एपीआई का उपयोग करना चाहता हूं।

  1. मैं चाहता हूं कि क्लाइंट-साइड कोड एक एक्सेस टोकन और रिफ्रेश टोकन जेनरेट करे और उन्हें REST API एंडपॉइंट्स को पास करे।
  2. REST API तब पाठ्यक्रमों की सूची प्राप्त करने के लिए निम्न कोड को कॉल करने के लिए उपरोक्त टोकन का उपयोग करें: objectOf(Classroom).courses().list().setPageSize(100).execute();

मैं निम्नानुसार क्लासरूम का निर्माण कर रहा हूं, जहां आवश्यक क्रेडेंशियल बनाने के लिए .getCredentials()उपयोग किया GoogleAuthorizationCodeFlow.Builderजाता है, लेकिन यह उपयोगकर्ता को अधिकृत करने और टोकन प्राप्त करने के लिए एक ब्राउज़र विंडो खोलता है। यह मेरे लिए काम नहीं करता है।

NetHttpTransport httpTransport = GoogleNetHttpTransport.newTrustedTransport();
    Classroom classRoom = new Classroom.Builder(httpTransport, JSON_FACTORY, getCredentials(httpTransport))
            .setApplicationName(APPLICATION_NAME).build();

जवाब

Jacques-GuzelHeron Aug 18 2020 at 09:39

मैं समझता हूं कि आप बाद में कक्षा में उनका उपयोग करने के लिए एक्सेस और रीफ्रेश टोकन प्राप्त करना चाहते हैं; और आप इस ऑपरेशन को सर्वर से चलाना चाहते हैं। यदि यह सही है, तो आपको अपनी पहचान साबित करने और क्रेडेंशियल्स प्राप्त करने के लिए अपने खाते के रूप में लॉगिन करना होगा, लेकिन कुछ विकल्प हैं।

चूंकि आप एक सर्वर से कोड निष्पादित करने जा रहे हैं, आप अपनी साख बनाने के लिए इन चरणों का पालन कर सकते हैं । उन क्रेडेंशियल्स को आपके कार्य फ़ोल्डर में एक बार सहेजने की आवश्यकता होती है और उन्हें हर रन पर पढ़ा जा सकता है।

वैकल्पिक रूप से, आप एक सेवा खाता बना सकते हैं और अपने लक्ष्यों तक पहुंचने के लिए इसका उपयोग कर सकते हैं यदि आप अपने संगठन के एक अलग उपयोगकर्ता के रूप में क्लासरूम के साथ बातचीत करना चाहते हैं। कृपया, इस चरण के लिए डोमेन-वाइड डेलिगेशन को सक्रिय करना याद रखें। यदि आपके कुछ प्रश्न हैं, तो वापस लिखने में संकोच न करें।