Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

205
Vistas
Acceder a una hoja privada de Google con una cuenta de servicio en la nube de Google

Tengo una hoja de cálculo privada de Google y estoy tratando de acceder a ella mediante programación usando Google Visualization/Google Charts. Creé la cuenta de servicio e intenté usar los paquetes google-auth-library y googleapis npm para crear un token de acceso que luego puedo usar para acceder a la hoja de cálculo. Pero, cuando trato de usar ese token de acceso para leer de la hoja de cálculo, la solicitud falla con el código HTTP 401 (no autorizado). ¿Qué debo hacer para que esto funcione?

Este es mi código:

 const { auth } = require('google-auth-library'); const keys = require('./jwt.keys.json'); const id = '{Spreadsheet ID}'; const sheetId = '{Sheet ID}'; const query = "{Query}"; async function getClient(){ const client = auth.fromJSON(keys); client.scopes = ['https://www.googleapis.com/auth/spreadsheets.readonly']; console.log(client); return client; } async function main(){ const client = await getClient(); const token = await client.getAccessToken(); console.log(token); console.log(token.token); const url = `https://docs.google.com/spreadsheets/d/${id}/gviz/tq?tqx=out:csv&tq=${encodeURIComponent(query)}&access_token=${token.token}#gid=${sheetId}`; const res = await client.request({url}); console.log(res); } main().catch(console.error);
about 4 years ago · Juan Pablo Isaza
1 Respuestas
Responde la pregunta

0

Cuando vi su secuencia de comandos, pensé que se requiere modificar el alcance. Tuve la misma situación que usted (el código de estado 401 usando su punto final). Desafortunadamente, parece que su punto final no se puede usar con el alcance de https://www.googleapis.com/auth/spreadsheets.readonly . Entonces, por ejemplo, ¿qué tal cambiarlo de la siguiente manera y probarlo nuevamente?

De:

 https://www.googleapis.com/auth/spreadsheets.readonly

A:

 https://www.googleapis.com/auth/spreadsheets

o

 https://www.googleapis.com/auth/drive.readonly

Nota:

  • Cuando probé su punto final usando el alcance modificado, confirmé que no ocurrió ningún error. Pero si lo probó y cuando ocurre un error, verifique otra parte nuevamente.
about 4 years ago · Juan Pablo Isaza Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda