Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

313
Views
Carga útil JSON no válida Recibida escribiendo en Google Sheet desde JavaScript/Ajax

Mi objetivo es escribir en una Hoja de cálculo de Google existente a través de una llamada Ajax/JavaScript en el lado del cliente.

Sin embargo, actualmente recibo el siguiente error:

Carga útil JSON no válida recibida. Nombre desconocido "{"range":"Sheet1!A8:C8","majorDimension":"ROWS","values":[["Field1","Field2","Field3"]]}": no se puede vincular el parámetro de consulta . El campo '{"range":"Sheet1!A8:C8","majorDimension":"ROWS","values":[["Field1","Field2","Field3"]]}' no se pudo encontrar en la solicitud mensaje.

Este es mi código JavaScript:

 const sheetID = "--privateField--"; const key = "--privateField--"; var url = "https://sheets.googleapis.com/v4/spreadsheets/"+sheetID+"/values:batchUpdate/?key="+key; $.ajax({ url: url, type: 'PUT', dataType: 'jsonp', valueInputOption: 'USER_ENTERED', data: JSON.stringify({ range: 'Sheet1!A8:C8', majorDimension: 'ROWS', values: [ ['Field1', 'Field2', 'Field3'] ] }), headers: { "Content-Type": "application/json" }, success: function(data) { console.log(data); }, error: function(data) { console.log(data); }

Donde sheetID & key se reemplazan con valores de producción reales.

Probé muchas variaciones diferentes de esta llamada API en función de los diferentes resultados de desbordamiento de pila que encontré, pero no pude hacer que nada funcionara. Me parece que he especificado 'Valores' correctamente (una matriz de matrices), pero el mensaje de error parece indicar lo contrario.

He podido leer desde Google Sheets usando Ajax/JavaScript en el lado del cliente antes, y ahora estoy tratando de obtener un ejemplo que funcione para escribir en la hoja.

Cualquier consejo o sugerencia sería muy apreciada.

about 4 years ago · Juan Pablo Isaza
1 answers
Answer question

0

Puntos de modificación:

  • Desde My goal is to write to an existing Google Sheet via a Ajax/JavaScript call on the client-side. y su secuencia de comandos que muestra, en este caso, la clave API no se puede utilizar para actualizar la hoja de cálculo. Desafortunadamente, parece que esta es la especificación actual. En este caso, se requiere utilizar el token de acceso. Tenga cuidado con esto.

    • Para recuperar el token de acceso, pensé que este documento oficial es útil. Ref Y, creo que también puedes verlo en Stackoverflow.

  • Cuando desee utilizar el método spreadsheets.values.batchUpdate de Sheets API, en su secuencia de comandos, se requiere el uso del método POST.

  • Y se requiere modificar el cuerpo de la solicitud.

Pensé que la razón de su problema actual se debe a los puntos anteriores. Cuando estos puntos se reflejan en su guión, se convierte en lo siguiente.

Guión modificado:

 const sheetID = "--privateField--"; const accessToken = "### your access token ###"; var url = "https://sheets.googleapis.com/v4/spreadsheets/" + sheetID + "/values:batchUpdate"; var requestBody = { valueInputOption: 'USER_ENTERED', data: [{ range: 'Sheet1!A8:C8', majorDimension: 'ROWS', values: [['Field1', 'Field2', 'Field3']] }] }; $.ajax({ url: url, type: 'POST', data: JSON.stringify(requestBody), headers: { "Content-Type": "application/json", "Authorization": "Bearer " + accessToken }, success: function (data) { console.log(data); }, error: function (data) { console.log(data); } });
  • Cuando probé este script, confirmé que los valores de [['Field1', 'Field2', 'Field3']] se colocan en la fila 8 en "Sheet1".

Referencias:

  • Método: hojas de cálculo.valores.batchUpdate

  • Uso de OAuth 2.0 para acceder a las API de Google

about 4 years ago · Juan Pablo Isaza Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!