Chrome Политика безопасности содержимого приложения не позволяет запускать eval () даже после внесенных изменений в манифест. json - PullRequest
0 голосов
/ 19 февраля 2020

Я занимаюсь разработкой Chrome приложения с Google Blockly . Для динамического запуска JavaScript кода я хочу использовать функцию eval().


Chrome приложение, расслабляющее политику по умолчанию с помощью манифеста

I попробовал вышеуказанную ссылку. Я использовал этот манифест в соответствии с chrome документами.


манифест. json

{
  "manifest_version": 2,
  "name": "Blockly",
  "version": "1.0.0",
  "icons": {
    "128": "icon_128.png"
  },
  "permissions": [],
  "app": {
    "background": {
      "scripts": ["background.js"]
    }
  },
  "minimum_chrome_version": "46",
  "content_security_policy": "script-src 'self' 'unsafe-eval'; object-src 'self'"
}

inject. js

window.addEventListener("load", function() {
 document.getElementById("myBtn").addEventListener("click", function() {
  let code = 'initiate();';
  try {
    eval(code);
   } catch (e) {
     console.log(e); 
  }
 });
});

Я все еще получаю эту ошибку:

EvalError: Отказался оценивать строку как JavaScript, поскольку unsafe-eval не является допустимым источником сценария в следующей безопасности содержимого Директива политики: "script-sr c 'self' blob: filesystem: 'wasm-eval'".

в HTMLButtonElement. (впрыск. js: 40)

1 Ответ

0 голосов
/ 20 февраля 2020

Я нашел ответ

Политика безопасности контента в Chrome Приложении

Chrome позволит вам ослабить политику безопасности контента по умолчанию; Chrome Приложения не будут.

...