Je travaille actuellement sur une application Web hébergée sur d'autres sites Web à l'intérieur d'une iframe à des fins de sécurité (protection des données des utilisateurs). Pour conserver l’état de la session pour les données non sécurisées, nous écrivons certaines données sur le stockage local afin que les fonctionnalités de l’utilisateur soient mémorisées, c’est-à-dire que nous mémorisons la couleur de fond de l’utilisateur, en enregistrant "backgroundColour" en "rouge".
Cependant, j'ai rencontré les deux problèmes suivants sur iOS Safari qui fonctionnent actuellement sur MacOS Safari et Chrome et Internet Explorer 11.
Issue 1 : le stockage local n'est pas conservé lorsque je force de quitter iOS
www.Host.com
, qui charge le contenu de mon iframe à partir d'un autre domaine, www.example.com
.Comportement attendu: le localStorage contient la propriété backgroundColour
Comportement réel: le stockage local est vide
Issue 2 : l'utilisation du contenu de l'iframe sur différents sites n'utilise pas de stockage local
www.Host.com
, qui charge le contenu de mon iframe à partir d'un autre domaine, www.example.com
.www.example.com
Comportement attendu: le stockage local est conservé entre les différents sites car il est stocké contre le DNS de l'iframe.
Comportement réel: le stockage local est vide
Quelqu'un at-il déjà vécu cela? Y a-t-il des solutions de contournement que les gens ont trouvées? Est-ce un bug dans iOS Safari? Ai-je fait quelque chose de mal?
À votre santé
Issue 1 correspond au comportement de Safari et ne peut pas être modifié en externe avec du code. Veuillez ouvrir une demande de fonctionnalité ou un rapport de bogue avec Apple:
https://www.Apple.com/feedback/safari.html
Issue 2: Malheureusement, la technique que vous utilisez "stockage local tiers" est une technique employée par les technologies de suivi. La récente publication «Push sur la confidentialité» a conduit tous les navigateurs à définir des règles plus strictes pour les cookies tiers, ainsi que pour le stockage local. Vous constaterez que les paramètres de confidentialité rendront votre expérience utilisateur incohérente. Vous ne pouvez pas vous attendre à ce que votre stockage local soit fiable lorsque vous êtes une tierce partie.
VOIR:Existe-t-il une solution permettant de définir un cookie tiers dans Iframe pour le safari?
ET
ET
https://groups.google.com/forum/#!topic/mozilla.dev.platform/vm81cSx4teo