У меня есть веб-приложение, которое использует localStorage. Теперь мы хотим встроить это веб-приложение в другие (сторонние) сайты с помощью iframe. Мы хотим предоставить встраивание iframe, аналогичное YouTube, чтобы другие веб-сайты могли встроить наше веб-приложение в iframe. Функционально он такой же, как если бы он не был встроен. Но это не работает. Chrome печатает сообщение об ошибке:
Uncaught SecurityError: Failed to read the 'localStorage' property from 'Window': Access is denied for this document.
Я просто делаю следующую проверку (в iframe):
if (typeof window.localStorage !== 'undefined') {
// SETUP SESSION, AUHT, LOCALE, SETTINGS ETC
} else {
// PROVIDE FEEDBACK TO THE USER
}
Я проверил свои настройки безопасности в Chrome, как описано в qaru.site/info/202484/... но это не работает. Есть ли какие-либо изменения, чтобы сделать возможным встраивание без необходимости настройки (по умолчанию) настроек безопасности большинства современных браузеров?
Чтобы получить больше информации, мы используем Ember-CLI для нашего веб-приложения и включили CSP (больше информации о Ember-CLI CSP). Может ли CSP вызвать в нашем веб-приложении ошибки безопасности?