CORS Access-Control-Max-Age est ignoré
Je suis de l'hébergement d'une Application web et son API sur des domaines différents et l'utilisation de la SCRO, être capable de travailler autour de la même origine. Pour l'instant, donc bon. Les travaux de cette.
De n'envoyer qu'un CORS de contrôle en amont, une fois par session, j'ai mis le
Contrôle d'accès-Max-Age de 20 jours, Mais cela ne fonctionne pas (testé dans Chrome):
https://db.tt/vfIW3fD2
Que dois-je changer?
source d'informationauteur Roland Schütz
Vous devez vous connecter pour publier un commentaire.
Si vous utilisez google Chrome Dev Tools, assurez-vous que vous avez "Désactiver le cache (alors que les DevTools est ouvert)" décoché. J'ai eu des problèmes avec le "Access-Control: Max-Age" ne pas être honoré pour réaliser que j'avais cette option cochée.
Chrome/Clin impose un max de contrôle en amont de temps de 10 minutes (600 secondes). Voici l'emplacement dans le code source qui définit ce:
https://chromium.googlesource.com/chromium/blink/+/master/Source/core/loader/CrossOriginPreflightResultCache.cpp#40
Tout contrôle en amont au-dessus de 10 minutes sera ignorée, et à 10 minutes sera utilisé à la place.
Différents navigateurs peuvent avoir différentes âge maximum des politiques. Safari/WebKit caches pour jusqu'à 5 minutes, tandis que Firefox caches pour jusqu'à 24 heures. Le code source de Chrome indique que la valeur max existe afin de "minimiser le risque d'utilisation empoisonner le cache après le passage à un réseau sécurisé".
Si le code ne peut pas analyser le max-age de l'en-tête (ou le serveur n'est pas en mesure de spécifier un max-age d'en-tête), le navigateur par défaut est de 5 secondes.
Je ne serais pas trop compter sur le contrôle en amont de la mise en cache.
À partir de la spécification:
Aussi, gardez les points suivants à l'esprit, (à partir de la SCRO spec):
Votre capture d'écran ne permet pas de déterminer si l'un des ci-dessus sont remplies.