Comment vider le cache du navigateur pour un seul site spécifique dans Mobile Safari?

28

Je fais des tests sur un site mobile en développement et il y a beaucoup de mises à jour et de changements sur ce site. Afin de tester à nouveau et d'effacer tout JavaScript ou autre contenu dans le cache de mon iPhone, j'ai besoin d'effacer le site de l'historique.

Cependant, je ne suis pas trop désireux d'effacer tout l' historique de mon navigateur, car je ne veux pas me reconnecter à tous les sites auxquels je suis actuellement connecté ou pour lesquels j'ai des cookies. Ces tests pourraient durer plusieurs mois et l'idée de devoir effacer mon historique et me connecter à tous mes différents comptes à chaque fois n'est pas si attrayante.

Existe-t-il un moyen d'effacer spécifiquement l'historique d'un seul domaine de mon historique sans vider tout mon cache?

Je pourrais (et ai) d'autres navigateurs sur mon iPhone (chrome, opéra - si cela compte même comme un navigateur) mais comme Safari est le navigateur que le public cible utilisera principalement, je dois garder celui-ci principalement.

JonW
la source
2
Je suggère de gérer correctement vos en-têtes de cache dans votre environnement de développement et de désactiver la mise en cache.
Gerry
Je suis avec @gerry pour contourner les caches de navigateur de piratage qui n'ont aucune API ou moyen de le faire sur toutes (ou même toutes) les versions iOS. Obtenir un appareil de test dédié que vous essuyez souvent est ma solution lorsque je ne veux pas changer le code des sites pour désactiver la mise en cache côté navigateur.
bmike
Ce n'est pas vraiment un hack que je recherche, mais si oui ou non iOS Safari a même la possibilité d'oublier ce site ou une telle méthode.
JonW
Ce n'est pas vraiment le cas si vous jailbreakez.
Gerry

Réponses:

32

Je ne sais pas si c'est exactement ce que vous voulez, mais si vous ouvrez Paramètres, puis cliquez sur Safari, faites défiler vers le bas et cliquez sur Avancé, puis cliquez sur Données du site Web, vous obtiendrez une liste des sites Web qui ont stocké des données. Vous pouvez cliquer sur Modifier, puis supprimer les données des sites dont vous souhaitez supprimer les données stockées.

daviewales
la source
1

Vous pouvez également l'utiliser dans le navigateur,? Nocache = 1 derrière l'URL. exemple www.constructivworks.com/?nocache=1

Cela devrait effacer le cache spécifiquement sur le site que vous avez ouvert dans cet onglet spécifique.

J'espère que cela t'aides!

Gary Davey
la source
S'agit-il d'une fonctionnalité de navigateur ou d'un serveur? Je m'attends à ce qu'il fasse un peu plus que demander une nouvelle page au serveur, laissant tout le reste en cache.
Deanna
J'ai essayé cela dans Safari, et il charge la page directement depuis le serveur et ignore le cache. Il n'a pas, cependant, effacer le cache de quelque façon.
Brett Donald
0

Ma version de la réponse d'André et Gary;

javascript:window.location.replace(window.location.origin+"/?nocache=1")
dnaatwork.com
la source
-1

Pour effacer les cookies d'un site spécifique sur Chrome pour iOS

  1. Enregistrez n'importe quel site en tant que signet via le menu à 3 points en haut à droite
  2. Renommer le signet en quelque chose comme «Effacer les cookies du site»
  3. Copiez / collez le code ci-dessous comme URL

Maintenant, visitez n'importe quel site, ouvrez vos signets et cliquez sur le signet que nous venons de créer. Cela effacera les cookies uniquement pour ce site, même sur Chrome iOS.

javascript:void((function(){var%20a,b,c,e,f;f=0;a=document.cookie.split(";%20");for(e=0;e<a.length&&a[e];e++){f++;for(b="."+location.host;b;b=b.replace(/^(?:%5C.|[^%5C.]+)/,"")){for(c=location.pathname;c;c=c.replace(/.$/,"")){document.cookie=(a[e]+";%20domain="+b+";%20path="+c+";%20expires="+new%20Date((new%20Date()).getTime()-1e11).toGMTString());}}}alert("Expired%20"+f+"%20cookies");})())

Les références
Andre Bulatov
la source
-1

Comme je ne pouvais pas trouver un moyen de le faire (j'essayais simplement de rafraîchir la feuille de style pour les tests de développement), j'ai fini par ajouter simplement ?v=$timeà la fin de ma feuille de style pendant que je testais pour m'assurer qu'il y avait toujours les modifications les plus récentes et n'a pas mis en cache (normalement la mise en cache est correcte mais j'avais besoin de voir les changements pendant le développement).

Gujamin
la source