Uso de la API de Java de Google Class Room en Tomcat Server como API de descanso
Quiero usar la API de Java de Google Classroom en Tomcat Server como una API REST.
- Quiero que el código del lado del cliente genere un token de acceso y actualice el token y lo pase a los puntos finales de la API REST.
- Luego, la API REST usa el token anterior para llamar al siguiente código y obtener la lista de cursos:
objectOf(Classroom).courses().list().setPageSize(100).execute();
Estoy creando Classroom de la siguiente manera, donde se .getCredentials()
usa GoogleAuthorizationCodeFlow.Builder
para crear la credencial requerida, pero abre una ventana del navegador para autorizar al usuario y obtener el token. Esto no me funciona.
NetHttpTransport httpTransport = GoogleNetHttpTransport.newTrustedTransport();
Classroom classRoom = new Classroom.Builder(httpTransport, JSON_FACTORY, getCredentials(httpTransport))
.setApplicationName(APPLICATION_NAME).build();
Respuestas
Entiendo que quieres recibir tokens de acceso y actualización para usarlos más tarde en Classroom; y desea ejecutar esta operación desde un servidor. Si eso es correcto, deberá iniciar sesión como su cuenta para probar su identidad y recibir las credenciales, pero existen algunas alternativas.
Dado que va a ejecutar el código desde un servidor, puede seguir estos pasos para crear sus credenciales. Esas credenciales deben guardarse en su carpeta de trabajo una vez y se pueden leer en cada ejecución.
Alternativamente, puede crear una cuenta de servicio y usarla para alcanzar sus objetivos si desea interactuar con Classroom como un usuario diferente de su organización. Recuerde activar la delegación de todo el dominio para este paso. No dude en escribirnos si tiene alguna pregunta.