por favor considere esto javascript:.csv como datos en función del éxito ajax
$.ajax({
url:'http://ichart.finance.yahoo.com/table.csv?s=GS&a=00&b=1&c=2010&d=08&e=3&f=2012&g=d&ignore=.csv',
type:'get',
dataType:'jsonp',
success:function(data){
alert(data);
}
})
La URL devuelve un archivo csv, pero yo estoy especificando el tipo de datos jsonp
porque se trata de una petición Ajax entre dominios . Sin ese parámetro, aparece el error "no se permite el origen".
Como especifico el tipo de datos jsonp
, la función ajax arroja un error porque el archivo .csv no tiene formato JSON. Pero en la consola de desarrollo puedo ver que el navegador SÍ recibe un archivo .csv coherente. Así que sé que estoy recibiendo con éxito el archivo CSV. Creo que debería ser posible, pero no estoy seguro de cómo recibir correctamente este archivo csv en mi función de ajax.
Por supuesto, si pudiera hacer que esta URL devuelva una cadena JSON correctamente formateada que sería la mejor, pero no estoy seguro de poder hacerlo.
Aquí es un violín, donde se puede probar, que tendrá que abrir la consola dev para ver que el error: http://jsfiddle.net/92uJ4/3/
Cualquier ayuda es muy apreciada.
Tim
Gracias por la gran información. Estaba pensando que este era el caso de que este método de extraer información no era realmente factible. Su solución se ve muy bien, estaba mirando YQL antes, creo que esa es la manera de hacerlo. –
¿Esta implementación guarda algo en la base de datos YQL? ¿o simplemente recupera los datos para una mayor manipulación? Gracias @JoeC –
@PT_C: Hasta donde sé, no guarda nada en la base de datos YQL. Debería ser solo un pase. Sin embargo, como se trata de un tercero, no puede garantizar que no estén registrando la información que pasa a través de sus sistemas, por lo que no utilizaría esto para nada confidencial. Sería mejor implementar su propia solución del lado del servidor para extraer datos en ese caso. –