Приложение Chrome: отказано в выполнении встроенного сценария, поскольку оно нарушает следующую директиву политики безопасности содержимого
Я провел некоторое исследование в той же теме и попробовал ответы, которые получил. Но все равно одна и та же ошибка выдает каждый раз.
В моем случае это приложение Chrome, и на одной странице я использую iframe и указываю src на некоторый контент XHTML. Это на самом деле содержит некоторые встроенные стили и скрипты, которые я не могу удалить или изменить.
Ниже мой файл манифеста.
{
"manifest_version": 2,
"name": "*****",
"short_name": "****",
"version": "*****",
"permissions": [""],
"content_security_policy": "default-src 'self' 'unsafe-inline' 'unsafe-eval'; script-src 'unsafe-inline' 'unsafe-eval' 'self'; object-src 'self' 'unsafe-inline' 'unsafe-eval'",
"app": {
"background": {
"scripts": ["chrome.js"]
}
},
"icons": {
"16": "1.png",
"48": "2.png",
"128": "3.png"
},
"sandbox": {
"pages": [
"****.html"
]
}
}
1 ответ
Пожалуйста, обратитесь к руководству по политике безопасности контента:
Встроенный скрипт
Вплоть до Chrome 45 не было механизма для ослабления ограничения на выполнение встроенного JavaScript. В частности, установка политики сценариев, включающей "unsafe-inline", не будет иметь никакого эффекта.
Начиная с Chrome 46, встроенные сценарии могут быть внесены в белый список, указав в политике base-закодированный хэш исходного кода. Этот хэш должен иметь префикс с помощью используемого алгоритма хэширования (sha256, sha384 или sha512). Посмотрите использование Хэша для элементов для примера.