IIC2513-2020-1 / syllabus

Material del curso
35 stars 3 forks source link

Google API no me deja hacer los pasos de autorización #161

Closed bedefrunner closed 4 years ago

bedefrunner commented 4 years ago

Hola!

Es un poco específica la pregunta, pero estoy tratando de implementar una API de Google Calendar en mi proyecto y tengo un problema para completar el "authorization flow" necesario para autorizar a mi aplicación a usar la API. Estoy siguiendo el tutorial oficial de la API de Google Calendar que está aquí: https://developers.google.com/calendar/quickstart/nodejs

El código que muestran lo primero que hace es leer 'credentials.json', un archivo de credenciales previamente descargado. Parsea la información de ese archivo, y luego de un par de pases intermedios, imprime en consola Authorize this app by visiting this url: y me pone un link. Justo abajo de esa línea, imprime Enter the code from that page here:. Entonces al apretar ese link debiera ocurrir que, luego de seleccionar una cuenta de google y dar los permisos correspondientes, me aparezca un codigo que yo pueda copiar y pegar en consola para poder terminar con este paso de autorización. Ese código nunca se muestra, de hecho luego de seguir todos los pasos me redirige al landing page de mi aplicación.

Estos pasos ya los hice una vez con otra aplicación en la que integré la API de Google Spreadsheets y de hecho me pasó algo parecido a esto, solo que el código me apareció en la URL misma de una de las vistas que me apareció luego de elegir una cuenta y dar los permisos necesarios (en vez de aparecer en un pop-up "bonito" como muestran algunos tutoriales de Youtube). Pero esta vez ni siquiera está en los URL. ¿En qué parte puede estar el error?

gpvidal commented 4 years ago

Hola @bedefrunner ,

Revisaste si en lo que dicen aquí (en ese enlace) aparece alguna opción que pueda ayudarte? https://developers.google.com/calendar/quickstart/nodejs#this_app_isnt_verified

Saludos,

bedefrunner commented 4 years ago

Lo pude solucionar! El error era que el primer paso que te pide la API en su tutorial oficial es apretar el botón "Enable Google Calendar API", donde te pide que pongas el URL de tu servidor web, y te dice: "this is the path in your application that users are redirected to after they have authenticated with Google. The path will be appended with the authorization code for access.", es decir, el path que uno ponga en ese paso es el que mostrará el code for access que se necesita para completar el paso de autenticación. El problema fue que ahí yo puse el path home de mi aplicación miapp.com/, pero mi aplicación nunca se "queda" en ese path sino que automáticamente redirige a miapp/sessions/login, entonces el code for access se "perdía". Ahora que cambié el path a miapp/sessions/login pude ver el código appendeado a ese path.

Por si acaso a alguien le pasa lo mismo, aunque no creo jajaja

gpvidal commented 4 years ago

Yo no quise preguntar eso porque me imaginé que habías seguido los pasos :stuck_out_tongue: