Question

Pour travailler sur un projet en AS3, je dois diffuser quelques fichiers à des fins de test de la bande passante. Les fichiers doivent provenir du CDN (proxy le plus proche du client) pour rendre le test de bande passante fiable.

Bien sûr, si les fichiers distants sont mis en cache dans le navigateur du client, le test de bande passante ne serait pas fiable.

Habituellement, je voudrais ajouter un horodatage dans les variables GET afin de tromper le cache des clients. Mais j’imagine que c’est une très mauvaise pratique de travailler avec un CDN.

Ma question est donc la suivante:

comment forcer contourner le cache du client pour récupérer une nouvelle version d'un fichier sans changer réellement la demande?

Merci d'avance,

T

EDIT:

L’idéal serait d’envoyer un en-tête de contrôle du cache dans URLRequest (merci Assaf!). Malheureusement, je l'essaie depuis un moment et cela ne semble pas fonctionner dans FlashPlayer. Même sur le Web, le sujet semble pessimiste.

Exemple rapide:

var headers:Array = new Array(new URLRequestHeader("Cache-Control", "no-cache"));
urlRequest.requestHeaders = headers;
urlRequest.load(url);

Quelqu'un a-t-il déjà réussi à faire quelque chose de similaire au travail?

Était-ce utile?

La solution

Pour ce faire, spécifiez les en-têtes de contrôle HTTP en cache dans votre demande ou configurez la non-mise en cache sur le serveur.

Si vous avez le contrôle sur le serveur, vous pouvez spécifier pragma no-cache ou quelque chose d'équivalent, de sorte que certains fichiers ne soient jamais mis en cache.

L’horodatage n’est en effet pas une très bonne idée, car il risquerait de se faufiler avec toutes sortes de caches.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top