Политика безопасности контента: в настройках страницы заблокирована загрузка ресурса в blob: https://... («frame-src») - PullRequest
0 голосов
/ 12 марта 2020

У меня есть встроенное приложение Shopify с React (Polaris) на внешнем интерфейсе и Node (Koa. js) на внутреннем. Одной из функций приложения является экспорт некоторой информации в виде электронной таблицы Excel.

Для создания файла я использую пакет xlsx и file-saver для скачать это. Все отлично работает в Chrome (v 80.0.3987.132), но в Firefox (v 73.0) я получаю следующую ошибку при нажатии на кнопку для загрузки файла:

Content Security Политика: параметры страницы заблокировали загрузку ресурса в blob: https://... («frame-src»).

Поскольку это встроенное приложение, оно выполняется внутри iframe. Основываясь на сообщении об ошибке, я подумал, что политика безопасности содержимого для больших двоичных объектов внутри iframe блокирует загружаемый файл, поэтому я добавил koa-шлем в свой бэкэнд со следующими параметрами:

    const Koa = require('koa');
    const KoaHelmet = require('koa-helmet');

    const server = new Koa();

    server.use(KoaHelmet({
         frameguard: false,
         contentSecurityPolicy: {
              directives: {
                  frameSrc: ["'blob'"]
              }
         }
    }));

Я также пытался frameSrc: ["'blob:'"], frameSrc: ["'blob:;'"], 'frame-src': ["'blob'"], 'frame-src': ["'blob:'"], 'frame-src': ["'blob:;'"], но ни один из них не решил проблему.

Чего мне не хватает?

...