2010-03-10 7 views
2

Je travaille sur une application web mobile pour iPhone en utilisant jqtouch pour la rendre plus "native". Il semble que Safari étouffe sur les grandes réponses Ajax. Y a-t-il une limite à la taille de la réponse? Firefox se comporte normalement et les petites réponses fonctionnent très bien. Vous ne savez pas par où commencer ou quels sont les outils à utiliser dans Safari pour vous aider à résoudre les problèmes.Safari Ajax taille limite de réponse?

Répondre

2

Vous pouvez utiliser les outils de développement Safari (Web Inspector) sur la version de bureau, mais la limitation de taille pourrait très bien être spécifique à l'iPhone. Pouvez-vous fournir plus d'informations? Quelles tailles causent le problème?

Votre meilleur pari, en général, est de charger des gros volumes de données.

+0

Expliquer la «charge du bloc»? – phirschybar

+1

Chargez les données en morceaux. Vous ne fournissez aucun détail, alors voici un exemple: Disons que vous avez une liste de contacts de 5000 personnes, dans n'importe quel système vous ne voulez pas demander tous les 5000 du serveur à la fois, iPhone ou pas - donc à la place vous démarrez à offset 0 et la taille de bloc 100 (ou autre) et quand la première demande est faite, vous commencez simplement la suivante en incrémentant l'offset à '+ ​​= taille de bloc». – rfunduk

+0

Ouais j'ai effectivement essayé de le faire (en exécutant une autre requête ajax quand la première se termine, et ainsi de suite). Mais il a encore expiré. On parle seulement de 25k - 50k ou plus ... Quoi qu'il en soit, j'ai essayé Safari Web Inspector (qui est un joli clone minimal de Firebug BTW, merci pour ça). Il s'avère que plus les demandes étaient longues, plus Safari retournait une erreur de syntaxe et essayait apparemment de 'lancer' des commandes du contenu de réponse ajax retourné (??) Bizarre. Quoi qu'il en soit, j'ai eu une petite intuition que j'avais à faire avec beaucoup d'espace blanc (onglets, nouvelles lignes, etc.) alors j'ai enlevé ceux de la réponse, et ça a marché! Toujours déconcerté – phirschybar

0

Il existe un problème connu avec Safari (à la fois mobile et de bureau) qui limite la taille de la réponse AJAX à environ 512K.