Я пытаюсь сделать расширение Chrome, и у меня проблемы с политикой безопасности контента.Политика и разрешения безопасности содержимого расширенного содержимого Chrome
Я создаю popup.html с вызовом json в popup.js, вызываемом в заголовке. Я также добавляю еще один .js-файл на удаленный сервер, я не могу включить его, так как это api-машина для внешней службы.
Я пробовал все с помощью manifest.json.
"permissions": [ //"optional_permissions": [
"http://*.myjsonserver.com/",
"http://*.twilio.com/*",
"https://*.twilio.com/*"
//"http://*/*",
//"https://*/*"
],
Я попробовал это.
"manifest_version": 2,
"content_security_policy": "connect-src 'self' http://myjsonserver.com; object-src 'self'", //connect-src
"content_security_policy": "script-src 'self' https://static.twilio.com; object-src 'self'"
Или я должен добавить javascript именно так?
"content_scripts": [
{
"matches": ["http://static.twilio.com/*"],
"js": ["jquery.js", "myscript.js"]
}
],
Я получаю эту ошибку на инспекторе Google Chrome.
Refused to load the script 'http://myjsonserver.com/get_token_cb.php?callback=jQuery210007401883858256042_144745747' because it violates the following Content Security Policy directive: "script-src 'self' https://static.twilio.com".
---------------
chrome-extension://static.twilio.com/libs/twiliojs/refs/6359b40/twilio.min.js Failed to load resource: net::ERR_FAILED
Failed to load resource: net::ERR_FAILED chrome-extension://static.twilio.com/libs/twiliojs/refs/6359b40/twilio.min.js
но ничего не работает, myjsonserver.com это не на сервере https, а на моем собственном сервере. URL twilio.com должен получить доступ к twilio api из javascript.
Это только для тестирования, потому что позже он будет на background.js
Я судимый все это, но я потерял и я понятия не имею.
Удалить СНТ, вам нужно ' "HTTP: //*.myjsonserver.com/"' разрешение только. Не загружайте удаленные сценарии, используйте json и локальные скрипты для его анализа. Не делайте XHR из сценариев контента (не уверен, где вы включаете 'twilio.min.js'): фон и всплывающее окно должны работать только отлично. – minj
Я должен загрузить удаленные js, из twilio у меня нет другого выбора. Я видел в коде Twilio, что он вызывает другой js-файл. – Gino
Я также просто обнаружил, что я не могу выполнить jQuery ajax-запрос на удаленном сервере, но я могу сделать чистый javascript 'xhr = new XMLHttpRequest();' В чем разница, почему я не могу выполнить вызов ajax с помощью jQuery, но я могу с XMLHttpRequest? – Gino