webs uso permite las cache aplicaciones jquery cors html5-appcache

uso - ¿Por qué jQuery arroja un error cuando solicito recursos externos usando un manifiesto de Appcache?



html5 permite el uso de las webs offline (2)

Lo tengo trabajando con la mesa . No más problemas de CORS ... por ahora.

Tengo una aplicación que usa un manifiesto .appcache. Todo funciona como se espera, los recursos se almacenan en caché:

CACHE MANIFEST CACHE: css/images/ajax-loader.gif [...] NETWORK: http://docs.google.com/* SETTINGS: prefer-online

Ahora, cuando solicito un recurso CSV desde http://docs.google.com, así:

$.get(url, function (data) { // do something with the data }).fail(function () { alert("There was an error in loading current data from the server."); });

la solicitud falla incluso si estoy conectado en línea (tanto en Chrome como en FF). Todo funcionó bien antes de usar Appcache.

¿Cuál es la forma correcta de solicitar recursos externos mientras tiene un manifiesto de Appcache?


Como mencioné en mi comentario, el problema no fue (solo) jQuery, sino también CORS resp. La falta de soporte de Google Docs ("Publicar en la web" significa para descargar, no para solicitar el recurso de una URL diferente, es decir, el origen. Al parecer, Google no desea agregar un Header set Access-Control-Allow-Origin "*" .

Entonces, lo que hice fue seguir esta útil guía: https://webapps.stackexchange.com/questions/11864/how-can-i-retrieve-records-from-a-google-spreadsheet-in-json-format y https : //developers.google.com/gdata/samples/spreadsheet_sample (La URL ya no es CSV sino JSONP, también ha cambiado a //spreadsheets.google.com/feeds/list/[...]/[...]/public/values?alt=json-in-script y jQuery agrega automáticamente la callback=xxx cuando se le llama con:

$.ajax({ url : url, type : ''GET'', dataType : ''jsonp'', success : function (data) { for(var i in data.feed.entry) { console.log(entry[''gsx$'' + ''actualColumnHeader''].$t); } }, error : function () { alert(''Failed''); } });

Esto no es bueno ni está limpio de ninguna manera (Atom Feed en lugar de CSV o JSON solo para analizarlo de nuevo, ¿en serio?), Pero funciona para mí.