Я хочу создать расширение chrome с пользовательским интерфейсом, который извлекается с удаленного сервера, а не с статическим файлом в репозитории расширений. Я попробовал следующее, но хром не смог загрузить страницу.Render chrome extension popup UI динамически
chrome.browserAction.setPopup({
"popup": "http://xxx.xxx.xxx/web.html"
});
Я также добавил домен в список разрешений. Возможно ли это с помощью инструментов google chrome dev?
Решение iframe выглядит хорошо. Но возможно ли, что моя фоновая страница загружает макет с использованием XHR, а затем отправляет его в popup.html и переписывает макет с помощью document.write или что-то еще, что является правильным объектом для poup? –
С одной стороны, это возможно. С другой стороны, это очень плохая идея с точки зрения безопасности (вы размещаете удаленный код в гораздо более высокий привилегированный контекст) и, вероятно, сломаете страницу [из-за CSP] (https://developer.chrome.com/extensions/contentSecurityPolicy). На самом деле, эта идея плохо с точки зрения безопасности, что, вероятно, это приведет к тому, что ваше расширение будет отклонено при публикации, если оно будет рассмотрено. – Xan
Лучшим из двух миров было бы запрашивать (или очищать) данные с веб-страницы, дезинфицировать их и создавать на основе этого свой собственный динамический интерфейс. – Xan