Alcuni servizi dati JSON su Internet sono progettati per essere consumati solo dai server e trascurano la possibilità di essere consumati direttamente da un'app solo per il Web.Come posso utilizzare JSON sulla pagina Web da un'origine senza né CORS né JSONP?
A causa di problemi tra siti, tali servizi potrebbero funzionare se hanno fornito un formato JSONP
o il supporto CORS
abilitato.
Voglio fare un piccolo strumento JavaScript che può chiamare una risorsa online che restituisce solo JSON
e non, e non supporta.
Un caso di esempio era un'app a pagina singola che stavo facendo per la quale l'unica fonte di dati che ho trovato non forniva CORS
o JSONP
. Essendo un'app a pagina singola, non disponeva di alcun server, pertanto era soggetta alla stessa politica di origine.
Quali strategie sono disponibili in questi casi?
Come funzionerebbe? Stai violando la politica della stessa origine e la chiamata fallirebbe. Non avresti bisogno di fare una sorta di chiamata JSONP a YQL? –
Niente affatto perché YQL supporta ['CORS'] (http://en.wikipedia.org/wiki/Cross-origin_resource_sharing), che è un'alternativa molto migliore a JSONP poiché utilizza la stessa interfaccia XHR anziché lo script- metodo di iniezione che presenta alcuni inconvenienti. Anche YQL supporta JSONP se ne hai bisogno. Aggiornerò la mia risposta – hippietrail
Se vuoi davvero che JSONP passi un parametro 'callback' così come' format: 'json''. – hippietrail