He estado usando la API de Google Finance para recopilar información de stock. El problema es que después de una llamada al http://www.google.com/finance/info?infotype=infoquoteall&q=[$tickerSymbol]
, el JSON que Google devuelve tiene //
agregado antes y por lo tanto la cadena no se puede codificar utilizando el json_encode()
de PHP. El JSONLint JSON Validator confirma que los //
s no son válidos. La solución obvia es quitar las barras desde el comienzo del JSON. No obstante, me pregunto por qué Google está agregando barras al JSON que está devolviendo. ¿Hay algún propósito detrás de las barras adicionales? ¿Es esto una peculiaridad con PHP json_encode()
cuando otros idiomas simplemente ignorarían los caracteres extra? ¿Estoy haciendo algo incorrectamente?Barras iniciales en JSON de la llamada de la API de Google Finance
Aquí hay un ejemplo del resultado de una solicitud de http://www.google.com/finance/info?infotype=infoquoteall&q=AAPL
con las barras diagonales iniciales.
// [ {
"id": "22144"
,"t" : "AAPL"
,"e" : "NASDAQ"
,"l" : "340.65"
,"l_cur" : "340.65"
,"ltt":"4:00PM EST"
,"lt" : "Jan 18, 4:00PM EST"
,"c" : "-7.83"
,"cp" : "-2.25"
,"ccol" : "chr"
,"el": "345.20"
,"el_cur": "345.20"
,"elt" : "Jan 18, 5:45PM EST"
,"ec" : "+4.55"
,"ecp" : "1.34"
,"eccol" : "chg"
,"div" : ""
,"yld" : ""
,"eo" : ""
,"delay": ""
,"op" : "327.05"
,"hi" : "344.76"
,"lo" : "326.00"
,"vo" : "66.34M"
,"avvo" : "11.28M"
,"hi52" : "348.48"
,"lo52" : "190.25"
,"mc" : "313.75B"
,"pe" : "22.49"
,"fwpe" : ""
,"beta" : "1.38"
,"eps" : "15.15"
,"name" : "Apple Inc."
,"type" : "Company"
}
]
Me encontré con esto también, alguna vez averiguar qué pasa con esto? Lo único que noté es que parece anteponer las barras cuando le da una empresa real (en lugar de un montón de resultados de búsqueda si no podía encontrar la empresa en particular). Muy extraño. –
+1. Experimentando lo mismo, y no puedo entender por qué anexan caracteres inválidos a la respuesta. Supongo que tiene algo que ver con la seguridad, pero no puedo encontrar ninguna documentación sobre esto. – dbau