Ho utilizzato l'API di Google Finance per raccogliere con successo alcune informazioni di borsa. Il problema è che dopo una chiamata a http://www.google.com/finance/info?infotype=infoquoteall&q=[$tickerSymbol]
, il JSON restituito da Google ha aggiunto //
prima di esso e quindi la stringa non può essere codificata utilizzando PHP json_encode()
. Il JSONLint JSON Validator conferma che i //
s non sono validi. L'ovvia soluzione è rimuovere le barre dall'inizio del JSON. In ogni caso, mi chiedo perché Google stia aggiungendo barre al JSON che sta restituendo. C'è uno scopo dietro le barre extra? Si tratta di una stranezza con PHP json_encode()
quando altre lingue ignorerebbero semplicemente i caratteri extra? Sto facendo qualcosa in modo errato?Leading slash in JSON dall'API di Google Finance chiamata
Ecco un esempio del risultato di una richiesta di http://www.google.com/finance/info?infotype=infoquoteall&q=AAPL
con le barre iniziali.
// [ {
"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"
}
]
Mi sono imbattuto anche in questo, ho mai capito cosa succede? L'unica cosa che ho notato è che sembra anteporre le barre quando ti dà una compagnia reale (al contrario di un gruppo di risultati di ricerca se non riusciva a trovare la compagnia in questione). Molto strano. –
+1. Sperimentare la stessa cosa, e non posso per la vita di me capire perché aggiungono caratteri non validi alla risposta. Immagino che abbia qualcosa a che fare con la sicurezza, ma non riesce a trovare alcuna documentazione su questo. – dbau