Stack Overflow en español Asked on January 18, 2021
Recibo el error
TypeError: Cannot read property ‘parse’ of undefined (línea 67, archivo "Código")
Al procesar un JSON, el contenido del JSON es:
{"TimeStamp":"XXX","Operador":"XXX","FirmanteNombre":"XXX","FirmanteNIF":"XXX","FirmanteCorreo":"XXX","FirmanteMovil":"XXX","FirmaLocalizador":"XXX","FirmaHashSMS":"XXX","FirmaHashMail":"XXX","FicheroHash":"XXX","FicheroName":"XXX"}
Compruebo que el JSON es legible y no contiene errores en formato:
El código para leer el JSON
var data = JSON.parse(json)
var TimeStamp = data.TimeStamp
var Firmante = data.FirmanteNombre
var NIF = data.FirmanteNIF
var OriginalMail = data.FirmanteCorreo
var phone = data.FirmanteMovil
var OriginalSMSKey = data.FirmaHashSMS
var OriginalMailKey = data.FirmaHashMail
var FileHash = data.FicheroHash
var FileName = data.FicheroName
Debería de obtener los datos correctamente pero ni siquiera hace el "parse".
El JSON se obtiene de un fichero .json
var rec = UrlFetchApp.fetch(url, {
method: "GET",
headers: {
Authorization: 'Bearer '+token
}, muteHttpExceptions: true})
var json = rec.getContentText()
He confirmado con Logger.log(json)
que ‘json’ es correcto y legible.
Lo más probable que que en alguna parte the tu proyecto hayas usado var JSON;
o algo similar con lo que se "sobreescribió" el objeto global JSON
como undefined
y por ello tienes los errorers de que no se encontraron (cannot read property... of undefined
)parse
ni stringify
.
Answered by Rubén on January 18, 2021
Si de algo puedo ayudar a alguien dejare esto aqui!!!!
Debes primero que todo almacenar tu json en una variable para poder parsearlo
si no estas seguro que lo tienes es un json usa stringify() para convertirlo a json y luego parseas con parse()
ejemplo
let json = JSON.stringify({"TimeStamp":"XXX","Operador":"XXX","FirmanteNombre":"XXX","FirmanteNIF":"XXX","FirmanteCorreo":"XXX","FirmanteMovil":"XXX","FirmaLocalizador":"XXX","FirmaHashSMS":"XXX","FirmaHashMail":"XXX","FicheroHash":"XXX","FicheroName":"XXX"});
let pars = JSON.parse(json);
console.log(pars.TimeStamp);
Es lo mismo si hicieras una llamada a una api parseas el resultado y listo!!!
Answered by Josh Martínez García on January 18, 2021
Get help from others!
Recent Answers
Recent Questions
© 2024 TransWikia.com. All rights reserved. Sites we Love: PCI Database, UKBizDB, Menu Kuliner, Sharing RPP