Safari iframe имеетStorageAccess, но выводит другой localStorage из его URL без iframe - PullRequest
0 голосов
/ 29 мая 2020

У меня есть iframe, который я пытаюсь интегрировать с Storage Access API на https://developer.mozilla.org/en-US/docs/Web/API/Storage_Access_API

html для iframe выглядит следующим образом:

<iframe 
  src="https://dev.mysite.io/auth/iframe.html" 
  sandbox="allow-storage-access-by-user-activation allow-scripts allow-same-origin" 
  frameborder="0"
></iframe>

В моем iframe есть следующий код сценария:

if ("hasStorageAccess" in document) {
    console.log("Checking Access API")
    document.hasStorageAccess().then((granted) => {
        if (granted) {
            console.log(localStorage);
        } else {
            // request access code omitted
            console.log("Requires storage access request");
        }
    })
} else {
    console.log("Storage Access API not available")
}

Когда этот сценарий запускается, он показывает, что доступ предоставлен, но выводит пустой localStorage.

Если я следую iframe url https://dev.mysite.io/auth/iframe.html и проверьте localStorage, он содержит все нужные элементы.


Почему локальное хранилище моего (await hasStorageAccess()) === true iframe отличается от вкладки с тем же URL-адресом?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...